做一个android 简单的游戏, 有多个关卡,现在只做了一关, 出的兵的数量和种类是定义在 数组中 。
还有其他很多 属性的数组,每一关肯定会有不同 ,如下
private int enemyArray[][] = {{1},{1} ,{1,2} }多个关卡,那么肯定要定义在数据库中,那么数据库如何设计 ,表中的对应 enemyArray 。我最初的想法是每一维 固定3个值。比如下面的enemyArray的定义,第一维是1个数 ,第三维有2个数,假设以后每一维固定为3个值。
原来的private int enemyArray[][] = {{1},{1}, ,{1,2} 就可以变为 private int enemyArray_t[][] = {{-1,1,-1},{-1,1,-1},,{-1,1,2}, -1表示为空,此处不出任何士兵 。
那么在数据库对应 enemyArray 的字段就可以表示为*1**1*12 ,类型是字符串型,*对应-1 ,这样一个字符一个字符的读入,就可以完成对 enemyArray的赋值。第一次做 ,请大家指教
还有其他很多 属性的数组,每一关肯定会有不同 ,如下
private int enemyArray[][] = {{1},{1} ,{1,2} }多个关卡,那么肯定要定义在数据库中,那么数据库如何设计 ,表中的对应 enemyArray 。我最初的想法是每一维 固定3个值。比如下面的enemyArray的定义,第一维是1个数 ,第三维有2个数,假设以后每一维固定为3个值。
原来的private int enemyArray[][] = {{1},{1}, ,{1,2} 就可以变为 private int enemyArray_t[][] = {{-1,1,-1},{-1,1,-1},,{-1,1,2}, -1表示为空,此处不出任何士兵 。
那么在数据库对应 enemyArray 的字段就可以表示为*1**1*12 ,类型是字符串型,*对应-1 ,这样一个字符一个字符的读入,就可以完成对 enemyArray的赋值。第一次做 ,请大家指教
/* 数据类定义 */
package XXX;import java.util.*;
import ....;public class Dataset{
private ArrayList<GameData> gamedata = null;
public static ArrayList<GameData> getGameData(){
return gamedata;
}
public static void init(){
gamedata = new ArrayList<GameData>();
GameData level_1 = new GameDate();
/* Do something with level 1 data */
gamedata.add(level_1);
}
}
/* 数据类调用 */
package XXX;import java.util.*;
import ....;public class Console{
ArrayList<GameData> gamedata = null;
public static void main(String argv[]){
Dataset.init();
gamedata = Dataset.getGameData();
/* Do something you like */
}
}