public void OnFire() { if (MachineAvailable) { if (LocalmachinegunFireState == MachineGunFireState.OnFiring) { return; } } else { return; } if (netType == InstanceNetType.GameNetworkClient && MachineAvailable) { LocalmachinegunFireState = MachineGunFireState.OnFiring; } if ((netType == InstanceNetType.GameNetworkBotOffline || netType == InstanceNetType.GameNetWorkOffline) && MachineAvailable) { ChangeFireActions(MachineGunFireState.OnFiring); LocalmachinegunFireState = MachineGunFireState.OnFiring; } #if ServerSide if (netType == InstanceNetType.GameNetWorkBotMaster && MachineAvailable) { OnFireStateChanged(MachineGunFireState.OnFiring); } #endif }
void ChangeFireActions(MachineGunFireState machinegunFireState) { if (machinegunFireState == MachineGunFireState.Idle) { CancelInvoke("FireMethod"); } else { InvokeRepeating("FireMethod", 0, 0.2f); } }
public void OnIdle() { if (netType == InstanceNetType.GameNetworkClient) { LocalmachinegunFireState = MachineGunFireState.Idle; } if ((netType == InstanceNetType.GameNetworkBotOffline || netType == InstanceNetType.GameNetWorkOffline)) { ChangeFireActions(MachineGunFireState.Idle); LocalmachinegunFireState = MachineGunFireState.Idle; } #if ServerSide if (netType == InstanceNetType.GameNetWorkBotMaster) { OnFireStateChanged(MachineGunFireState.Idle); } #endif }