public static TankStat BytesAllToTankStat(byte[] BytesAll) { if (BytesAll.Length != 5 + GameSettings.n_AmmoKind + GameSettings.n_TankBodyPart) { throw new TankStatParseException("Input BytesAll length error"); } TankStat tankStat = new TankStat { health = (int)BytesAll[0], output = (int)BytesAll[1] * 256 + (int)BytesAll[2], kill = (int)BytesAll[3], speed = (int)BytesAll[4], hit = (int)BytesAll[5], }; int i; for (i = 0; i < GameSettings.n_AmmoKind; i++) { tankStat.AmmoRemain[i] = (int)BytesAll[6 + i]; } tankStat.PartHealth = new int[GameSettings.n_TankBodyPart]; for (i = 0; i < GameSettings.n_TankBodyPart; i++) { tankStat.PartHealth[i] = (int)BytesAll[6 + GameSettings.n_AmmoKind + i]; } return(tankStat); }
public void Init(Stats.TankStat _stat) { enabled = true; stat = _stat; Cursor.lockState = CursorLockMode.Locked; Cursor.visible = false; lastTime = Time.time; Canvas_Info.SetActive(true); }
public void SetTanks(Base.Tank[] _PlayerTanks) { PlayerStats = new TankStat[_PlayerTanks.Length]; for (int i = 0; i < _PlayerTanks.Length; i++) { if (_PlayerTanks[i] != null) { PlayerStats[i] = _PlayerTanks[i].GetStat(); } else { PlayerStats[i] = new TankStat(); } } }
public static TankStat Bytes5ToTankStat(byte[] Bytes5) { if (Bytes5.Length != 5) { throw new TankStatParseException("Input Byte4 length error"); } TankStat tankStat = new TankStat { health = (int)Bytes5[0], output = (int)Bytes5[1] * 256 + (int)Bytes5[2], kill = (int)Bytes5[3], speed = (int)Bytes5[4] }; return(tankStat); }