/// <summary> /// Ustawia wszystkie parametry czołgu. /// Wystarczy, że podasz enum czołgu jakiego parametry chcesz ustawić /// </summary> /// <param name="myTank">enum czołgu którego parametry chcesz przypisać maszynie</param> void SetTankParametrs(TankData myTank) { GetComponent <PlayerGO>().myPlayer.tank = TanksData.FindTankEnum(myTank); magazynek = myTank.maxAmmo; maxHp = myTank.maxHp; damage = myTank.damage; reload = myTank.reload; speed = myTank.speed; turnSpeed = myTank.turnSpeed; headTurnSpeed = myTank.headTurnSpeed; damageLotery = myTank.damageLotery; reloadBetweenMagazine = myTank.reloadBetweenMagazine; GetComponent <TankShot>().ResetMagazine(myTank.maxAmmo); if (photonView.isMine) { GetComponent <PlayerGO>().myPlayer.currentHp = myTank.maxHp; } }
void SetTankObject(TankData myTank) { //Ustawiam parametry czołgu SetTankParametrs(myTank); //Ustawiam textury kadłuba, wieży i (jeśli jest) przykrycia lufy SetTankTexture(myTank.hullTexture, myTank.turretTexture, myTank.turretCapTexture); //Ustawiam pozycję wieży SetGameObjectPosition(myTank.turretPos.x, myTank.turretPos.y, turretKeep); //Ustawiam pozycję przykrycia lufy SetGameObjectPosition(myTank.turretCapPos.x, myTank.turretCapPos.y, turretCap); //Ustawiam pozycję wylotu lufy SetGameObjectPosition(myTank.barrlelEndPos.x, myTank.barrlelEndPos.y, barrelEndPoint); //Ustawiam collider czołgu oraz collider zbierania score ResetPolygon(myTank.offset.x, myTank.offset.y, myTank.size.x, myTank.size.y); //Jeśli mam przykrycie lufy to włączam ten GameObject, jeśli nie mam to wyłączam turretCap.SetActive(myTank.iHaveTurretCap); //Jeśli wieża ma ograniczoną rotację to ją muszę wpierw wyprostować if (!myTank.turretCan360) { turret.transform.localRotation = Quaternion.identity; } //Dla graczy lokalnych if (photonView.isMine) { MainTurret.Instance.OgraniczonaRotacja = !myTank.turretCan360; TechTree.Instance.TankSwitchTierButton(myTank.level); TechTree.Instance.FindTankButton(TanksData.FindTankEnum(myTank)).OnClick(); cameraOrthographicSize = myTank.cameraSize + 10; } #region Wyjątki czołgów //OI'emu musimy włączyć działka lub je wyłączyć (jeśli zginął i np. KHA-GO będzie przez to przechodzić) if (myTank.tank == Tanks.O_I) { for (int i = 0; i < turretsOI.Length; i++) { turretsOI[i].SetActive(true); turretsOI[i].GetComponent <AutoShot>().Reset(); } } else { for (int i = 0; i < turretsOI.Length; i++) { turretsOI[i].SetActive(false); } } //IS7 również posiada wieżyczkę na wieży if (myTank.tank == Tanks.IS7) { turretIS.SetActive(true); turretIS.GetComponent <AutoShot>().Reset(); } else { turretIS.SetActive(false); } // natomiast HA-TO ma nierychomą wieżyczkę no ale trzeba ją wyprostować (prędkość obrotu ma = 0) if (myTank.tank == Tanks.HA_TO_300MM) { turret.transform.localRotation = Quaternion.identity; } #endregion }