public void updateData() { GameBattleStage stage = GameBattleManager.instance.ActiveBattleStage; title.text = stage.SDES.Title; win.text = stage.SDES.Win; lose.text = stage.SDES.Lose; proficiency.text = stage.SDES.Proficiency; int enemyCount = GameBattleUnitManager.instance.getEnemyCount(); string enemyCountStr = enemyCount.ToString(); if (enemyCount < 10) { enemyCountStr = enemyCountStr.Insert(0, "0"); } int userCount = GameBattleUnitManager.instance.getUserCount(); string userCountStr = userCount.ToString(); if (userCount < 10) { userCountStr = userCountStr.Insert(0, "0"); } int npcCount = GameBattleUnitManager.instance.getNpcCount(); string npcCountStr = npcCount.ToString(); if (npcCount < 10) { npcCountStr = npcCountStr.Insert(0, "0"); } int turnCount = GameBattleTurn.instance.Turn; string turnCountStr = turnCount.ToString(); if (turnCount < 10) { turnCountStr = turnCountStr.Insert(0, "00"); } else if (turnCount < 100) { turnCountStr = turnCountStr.Insert(0, "0"); } enemy.text = GameDefine.getBigInt(enemyCountStr); user.text = GameDefine.getBigInt(userCountStr); npc.text = GameDefine.getBigInt(npcCountStr); turn.text = GameDefine.getBigInt(turnCountStr); }
public void clear() { clearAnimations(); clearTreasures(); clearStage(); activeDTL = null; activeBattleStage = null; activeBattleStart = null; layerHeight = 0; lastEffectID = GameDefine.INVALID_ID; onEventOver = null; }
public void setData(GameSaveDataInfo info) { if (info.Stage == 0) { image.gameObject.SetActive(false); text.text = ""; lvText.text = ""; Proficiency0.text = ""; Proficiency1.text = ""; Turn0.text = ""; Turn1.text = ""; time.text = ""; return; } selection = false; image.gameObject.SetActive(true); GameBattleStage stage = GameBattleData.instance.getStage(info.Stage); text.text = stage.SDES.Title; lvText.text = GameDefine.getBigInt(info.LV.ToString()); Proficiency0.text = GameStringData.instance.getString(GameStringType.SL0); Proficiency1.text = GameDefine.getBigInt(info.Proficiency.ToString()) + " "; if (info.Proficiency < info.Stage - info.Stage / 5) { Proficiency1.text += GameStringData.instance.getString(GameStringType.SL2); } else { Proficiency1.text += GameStringData.instance.getString(GameStringType.SL3); } Turn0.text = GameStringData.instance.getString(GameStringType.SL4); Turn1.text = GameDefine.getBigInt(info.TurnCount.ToString()); DateTime dt = DateTime.Parse("1970-01-01 00:00:00").AddSeconds(info.TimeData); time.text = dt.ToLocalTime().ToString("yyyy-MM-dd HH:mm:ss") + " "; dt = DateTime.Parse("1970-01-01 00:00:00").AddSeconds(info.Time); time.text += GameStringData.instance.getString(GameStringType.Time0) + string.Format("{0:T}", dt); }
public void saveText() { string strHelp = ""; for (int i = 0; i < data.Length; ++i) { GameBattleStage stage = data[i]; strHelp += stage.SDES.Title + "\r\n"; strHelp += "胜利条件:" + stage.SDES.Win + "\r\n"; strHelp += "失败条件:" + stage.SDES.Lose + "\r\n"; strHelp += "熟练度:\r\n"; strHelp += "过关要点:\r\n"; strHelp += "城镇场景:\r\n\r\n"; } File.WriteAllText(Application.dataPath + "/Objects/Help/Help40.txt", strHelp, Encoding.UTF8); }
public void active() { activeBattleStage = GameBattleData.instance.getStage(GameUserData.instance.Stage); activeBattleStart = GameBattleData.instance.getStartData(GameUserData.instance.Stage); activeDTL = activeBattleStage.DTL; GameCameraManager.instance.MapWidth = activeDTL.Width * GameDefine.TEXTURE_WIDTH; GameCameraManager.instance.MapHeight = activeDTL.Height * GameDefine.TEXTURE_HEIGHT; byte[] block = new byte[activeDTL.Width * activeDTL.Height]; for (int i = 0; i < activeDTL.Width * activeDTL.Height; i++) { block[i] = activeDTL.Points[i].Move; } GameBattlePathFinder.instance.initMap(activeDTL.Width, activeDTL.Height, block); }
public void showUnits(int e) { GameBattleStage stage = GameBattleManager.instance.ActiveBattleStage; for (int i = 0; i < stage.Man.Length; i++) { GameBattleMan man = stage.Man[i]; if (man.EventParm1 == e) { GameBattleUnit unit = GameBattleUnitManager.instance.getUnit(i); GameUnitMove unitMove = GameUnitMoveTypeData.instance.getData(unit.MoveType); GameBattleUnit unit1 = GameBattleUnitManager.instance.getUnit(unit.PosX, unit.PosY); if (unit != unit1 && unit1 != null) { GameBattlePathFinder.instance.findNearPos(unit.PosX, unit.PosY, unitMove.block); unit.setPos(GameBattlePathFinder.instance.nearPosX, GameBattlePathFinder.instance.nearPosY); } // if ( GameBattlePathFinder.instance.isBlockPos( unit.PosX , unit.PosY , unitMove.block , unit ) ) // { // GameBattlePathFinder.instance.findNearPos( unit.PosX , unit.PosY , unitMove.block ); // // unit.setPos( GameBattlePathFinder.instance.nearPosX , // GameBattlePathFinder.instance.nearPosY ); // } unit.IsShow = true; unit.updateAlive(); unit.playAnimationBattle(GameAnimationType.Stand, GameAnimationDirection.South, null); unit.updateInteam(); } } }
public void load(int stage) { clear(); data[stage] = new GameBattleStage(); loadLayer(stage); loadEMSG(stage); loadSDESData(stage); loadJudgeData(stage); loadTEVT(stage); loadMEVT(stage); loadMan(stage); loadXY(stage); loadDTL(stage); loadEvent(stage); Debug.Log("GameBattleData loaded. " + stage); }
public void checkEvent(GameBattleTurnEventType type, OnEventOver over) { GameBattleStage stage = GameBattleManager.instance.ActiveBattleStage; for (int i = 0; i < stage.TEVT.Length; i++) { if ((stage.TEVT[i].EventTurn == turn || stage.TEVT[i].EventTurn == GameDefine.INVALID_ID) && stage.TEVT[i].EventType == type) { GameBattleEventManager.instance.showEvent(stage.TEVT[i].EventID, 0, over); return; } // if ( stage.TEVT[ i ].EventTurn < 0 && // GameBattleEventManager.instance.showedEvent( stage.TEVT[ i ].EventID - stage.TEVT[ i ].EventTurn ) ) // { // GameBattleEventManager.instance.showEvent( stage.TEVT[ i ].EventID , 0 , over ); // return; // } } over(); }
public void initUnits() { GameBattleStage stage = GameBattleManager.instance.ActiveBattleStage; units = new GameBattleUnit[stage.Man.Length]; for (int i = 0; i < stage.Man.Length; i++) { GameUnit unit = GameUnitData.instance.getData(stage.Man[i].UnitBase.UnitID); string path = "Prefab/Sprite/man" + GameDefine.getString3(unit.Sprite) + "/"; path += (GameDefine.getString3(unit.Sprite) + "man"); GameObject obj = Instantiate <GameObject>(Resources.Load <GameObject>(path)); GameAnimation ani = obj.GetComponent <GameAnimation>(); obj.name = "man" + GameDefine.getString3(unit.Sprite) + " " + i + " " + stage.Man[i].UnitBase.UnitID; Transform trans = obj.transform; trans.SetParent(unitTransform); trans.localScale = new Vector3(1.0f, 1.0f, 1.0f); GameBattleMovement movement = obj.AddComponent <GameBattleMovement>(); GameBattleUnit battleUnit = obj.AddComponent <GameBattleUnit>(); battleUnit.init(unit, stage.Man[i].clone()); if (battleUnit.UnitID < GameDefine.MAX_USER) { battleUnit.setUnitBase(GameUserData.instance.getUnitBase(battleUnit.UnitID)); } battleUnit.updateUnitData(); battleUnit.initHPMP(); battleUnit.clearMove(); if (battleUnit.IsUser) { addUser(battleUnit); } else if (battleUnit.IsEnemy) { addEnemy(battleUnit); } else if (battleUnit.IsNpc) { addNpc(battleUnit); } units[i] = battleUnit; if (stage.XY.Length <= i) { } else { GameBattleXY xy = stage.XY[i]; movement.setPos(xy.X, xy.Y); } } }
public void showUnits(int parm, int check) { bool b = false; GameBattleMan[] Man = GameBattleManager.instance.ActiveBattleStage.Man; GameBattleStage stage = GameBattleManager.instance.ActiveBattleStage; for (int i = 0; i < Man.Length; i++) { GameBattleMan man = Man[i]; if (man.EventParm1 == parm) { GameBattleUnit unit = GameBattleUnitManager.instance.getUnit(i); // if ( unit.IsKilled ) // { // unit.initHPMP(); // GameBattleXY xy = stage.XY[ i ]; // unit.setPos( xy.X , xy.Y ); // } if (unit.IsAlive) { unit.setPos(stage.XY[unit.BattleManID].X, stage.XY[unit.BattleManID].Y); } GameUnitMove unitMove = GameUnitMoveTypeData.instance.getData(unit.MoveType); GameBattleUnit unit1 = GameBattleUnitManager.instance.getUnit(unit.PosX, unit.PosY); if (check == 1 && unit != unit1 && unit1 != null) { GameBattlePathFinder.instance.findNearPos(unit.PosX, unit.PosY, unitMove.block); unit.setPos(GameBattlePathFinder.instance.nearPosX, GameBattlePathFinder.instance.nearPosY); } if (check == 1 && GameBattlePathFinder.instance.isBlockPos(unit.PosX, unit.PosY, unitMove.block, unit)) { GameBattlePathFinder.instance.findNearPos(unit.PosX, unit.PosY, unitMove.block); unit.setPos(GameBattlePathFinder.instance.nearPosX, GameBattlePathFinder.instance.nearPosY); } unit.IsShow = true; // unit.IsActed = true; if (unit.IsKilled) { unit.IsKilled = false; unit.setAlpha(1.0f); unit.gameObject.SetActive(true); } unit.updateAlive(); unit.playAnimationBattle(GameAnimationType.Stand, GameAnimationDirection.South, null); unit.updateInteam(); // if ( !b && GameBattleTurn.instance.Turn > 1 ) // { // if ( GameUserData.instance.Stage == 12 && parm == 4 ) // { // // stage 12 bug // continue; // } // // b = true; // // GameBattleCursor.instance.show(); // GameBattleCursor.instance.moveTo( unit.PosX , unit.PosY , // GameBattleCursor.SpeedX , GameBattleCursor.SpeedY , // onShowUnitOver ); // } } } GameBattleUnitManager.instance.resetEnemyAI(); if (!b) { onShowUnitOver(); } }
public GameBattleXY getUnitXY(int i) { GameBattleStage stage = GameBattleManager.instance.ActiveBattleStage; return(stage.XY[i]); }