public void ThrowKnife(int knifeIndex, float input) { GameLoop gameLoop = games[knifeIndex]; if (gameLoop.CanThrow) { gameLoop.Throw(input); KnifeThrow?.Invoke(this, new KnifeThrowEventArgs(knifeIndex, gameLoop.TimeThrow, gameLoop.TimeNextThrow, input)); } }
public Fight(KnifeInfo[] knifes, SettingsStorage knifeDefStorage, int fightIndex) { WaitForReady = true; FightIndex = fightIndex; games = new GameLoop[knifes.Length]; _knifesReadyCounter = knifes.Length; for (int i = 0; i < knifes.Length; i++) { Game g = new Game(knifeDefStorage.KnifeSettings, knifeDefStorage.Settings); g.SetKnifeMode(knifes[i].knifeName, knifes[i].knifeMode); games[i] = new GameLoop(g); } }
public bool CanThrow(int knifeIndex) { GameLoop gameLoop = games[knifeIndex]; return(!WaitForReady && gameLoop.CanThrow && !figthClosed); }