Přidaný command a event pro otevírání a zavírání dveří
This commit is contained in:
parent
b968b12090
commit
952aae10de
7 changed files with 87 additions and 30 deletions
30
FNAF_Server/CommandProcessor.cs
Normal file
30
FNAF_Server/CommandProcessor.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
using PacketLib;
|
||||
|
||||
namespace FNAF_Server;
|
||||
|
||||
public class CommandProcessor {
|
||||
public static void Evaluate(PlayerCommand[] commands, int pid) {
|
||||
ServerPlayer currentPlayer = Server.Players[pid];
|
||||
|
||||
foreach (var playerCommand in commands){
|
||||
switch (playerCommand.ID){
|
||||
case 0:
|
||||
Console.WriteLine($"C: Player {pid} switched to camera {playerCommand.Args[0]}");
|
||||
Server.SendUpdateToAll([GameEvent.SWITCH_CAM(pid, playerCommand.Args[0])]);
|
||||
break;
|
||||
case 1:
|
||||
bool monitorState = !currentPlayer.state.monitorUp;
|
||||
currentPlayer.state.monitorUp = monitorState;
|
||||
Console.WriteLine($"C: Player {pid} toggled camera {(monitorState ? "on" : "off")}");
|
||||
Server.SendUpdateToAll([GameEvent.TOGGLE_MONITOR(pid, monitorState)]);
|
||||
break;
|
||||
case 2:
|
||||
bool doorState = !currentPlayer.state.doorStates[playerCommand.Args[0]];
|
||||
currentPlayer.state.doorStates[playerCommand.Args[0]] = doorState;
|
||||
Console.WriteLine($" Player {pid} {(doorState ? "closed" : "opened")} door {playerCommand.Args[0]}");
|
||||
Server.SendUpdateToAll([GameEvent.TOGGLE_DOOR_OFFICE(pid,playerCommand.Args[0] ,doorState)]);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue