public static void WriteCommandInfo(this string combotype, string text) { var names = Enum.GetNames(typeof(Command)).ToList(); var vals = text.Split(','); List <string> Lines = new List <string>(); Lines.Add("Datatype Command"); Lines.Add(DateTime.Now.ToString("yyyyMMddhhmmss")); Lines.Add(vals[0]); var val = int.TryParse(vals[1], out int x) ? vals[1] : Enum.GetNames(typeof(Command)).Contains(vals[1]) ? Enum.GetNames(typeof(Command)).ToList().IndexOf(vals[1]).ToString() : "0"; if (val != null) { Lines.Add(val); var ID = Guid.NewGuid().ToString(); if (!Directory.Exists(folder)) { Directory.CreateDirectory(folder); } string subfolder = folder + "\\Command"; if (!Directory.Exists(subfolder)) { Directory.CreateDirectory(subfolder); } string fn = subfolder + "\\" + ID + ".txt"; File.WriteAllLines(fn, Lines); CmdNetwork.Propogate(CMDLibrary.WriteNull); } }
public static void ReadCommandInfo(this string combotyp, string text) { var output = CmdNetwork.Predict(text, CMDLibrary.WriteNull); var numb = output.ToList().IndexOf(output.Max()); var result = Enum.GetNames(typeof(Command)).ToList()[numb]; TaskDialog.Show("Result", result); }
private void ControlCarCall(CmdNetwork Cmmd, int IdPlayer, Vector3 DirCar, bool[] Buttons) { //Control del carro switch(Cmmd) { case CmdNetwork.ADD_PLY: if(GameLogic.CurrentGameState != Game_Logic.Game_States.PLAY) GameLogic.AddPlayer("Player" + IdPlayer.ToString(), IdPlayer); break; case CmdNetwork.RM_PLY: GameLogic.RmPlayer(IdPlayer); break; case CmdNetwork.DATA_ACEL: if (GameLogic.StateScreen == Game_Logic.Game_SCR.RUNNING) { switch (GameLogic.CurrentGameState) { case Game_Logic.Game_States.PLAY: // Control the car steering with right and left arrow keys if ((DirCar.Y > 20) && (DirCar.Y < 35)) CarObjPhy[IdPlayer].SetSteering(-0.2f); if ((DirCar.Y > 35) && (DirCar.Y < 55)) CarObjPhy[IdPlayer].SetSteering(-0.3f); if (DirCar.Y > 55) CarObjPhy[IdPlayer].SetSteering(-0.4f); if ((DirCar.Y < -20) && (DirCar.Y > -35)) CarObjPhy[IdPlayer].SetSteering(0.2f); if ((DirCar.Y < -35) && (DirCar.Y > -55)) CarObjPhy[IdPlayer].SetSteering(0.3f); if (DirCar.Y < -55) CarObjPhy[IdPlayer].SetSteering(0.4f); if ((DirCar.Y < 20) && (DirCar.Y > -20)) CarObjPhy[IdPlayer].SetSteering(0); // Control the car's forward torque with up and down arrow keys //if (DirCar.X < -15) // CarObjPhy[IdPlayer].SetTireTorque(1); //else if (DirCar.X > 15) // CarObjPhy[IdPlayer].SetTireTorque(-5); //else // CarObjPhy[IdPlayer].SetTireTorque(0); CarObjPhy[IdPlayer].SetTireTorque(0); CarObjPhy[IdPlayer].ApplyHandBrakes(0); if (Buttons[0])//Disparo { Vector3 PosCar, PosBall; PosCar = CarObjPhy[IdPlayer].PhysicsWorldTransform.Translation; PosBall = new Vector3(PosCar.X, PosCar.Y, PosCar.Z + 4); //Call Function for Bullets GameLogic.SoundGame.Laser1.Play(); GameLogic.SoundGame.Laser1.Volume = 0.5f; //Manager3D.CreateShootBullet(PosBall, CarObjPhy[0].PhysicsWorldTransform.Left, Color.Blue); if (GameLogic.Players[IdPlayer].PlayerBullets.Count < GameLogic.MAX_NUM_BULLET) { Bullet Bala = new Bullet(PosBall, Manager3D.BulletModel, Manager3D.BulletrMat, CarObjPhy[IdPlayer].PhysicsWorldTransform.Left, groundMarkerNode); GameLogic.Players[IdPlayer].PlayerBullets.Add(Bala); } else { int Index = Bullet.SearchBall(GameLogic.Players[IdPlayer].PlayerBullets); if (Index > -1) { //Adicciono Bala GameLogic.Players[IdPlayer].PlayerBullets[Index].ReAddBullet(PosBall, CarObjPhy[IdPlayer].PhysicsWorldTransform.Left); } } } if (Buttons[1])//Gas CarObjPhy[IdPlayer].SetTireTorque(1); if(Buttons[2])//Freno { if(DirCar.X < -15) CarObjPhy[IdPlayer].SetTireTorque(-5); //Reversa else CarObjPhy[IdPlayer].ApplyHandBrakes(25); } break; case Game_Logic.Game_States.SEL_PLY: ValidatemenuAcel(DirCar, IdPlayer, Buttons); break; } } break; } }