public void PlayerCheckTest_2_1() //Если на вход поступает список из двух пользователей и иформация об игроке { //arrange ModelServer model = new ModelServer(); ControllerServer controller = new ControllerServer(model); List <GeneralInfo> listG = new List <GeneralInfo>(); GeneralInfo gen = new GeneralInfo(); gen.Name = "Test_1"; gen.Password = "******"; listG.Add(gen); gen = new GeneralInfo(); gen.Name = "Test_2"; gen.Password = "******"; listG.Add(gen); GeneralInfo userG = new GeneralInfo(); userG.Name = "Test_1"; userG.Password = "******"; GeneralInfo expected = listG[0]; //act GeneralInfo actual = ControllersS.cInfoUsers.PlayerCheck(listG, userG); //assert Assert.AreEqual(expected, actual); }
public void PlayerSaveTest_1() //В метод поступает пустое значение { //arrange ModelServer model = new ModelServer(); ControllerServer controller = new ControllerServer(model); List <GeneralInfo> listG = new List <GeneralInfo>(); GeneralInfo gen = new GeneralInfo(); gen.Name = "Test_1"; gen.Password = "******"; listG.Add(gen); gen = new GeneralInfo(); gen.Name = "Test_2"; gen.Password = "******"; listG.Add(gen); bool expected = true; //act bool actual = ControllersS.cInfoUsers.PlayerSave(listG); //assert Assert.AreEqual(expected, actual); }
public override void Process(ModelServer Model) { foreach (Item item in items) { for (int i = 1; i <= Model.ListUsers[num].Items.Length; i++) { if (Model.ListUsers[num].Items[i].IdItem == item.IdItem) { Item voidItem = new Item(); Model.ListUsers[num].Items[i] = voidItem; //Удаляем вещь из инвентаря игрока voidItem.IdItem = -1; item.Location = itemLocation; lock (Model.Map.ListItems) { Model.Map.ListItems.Add(item); //Добавляем вещь на карту } break; } } itemLocation.X += 25; } foreach (NetworkStream nStream in Model.ListNs) //Даём актуальную инфу всем игрокам об удалённом с карты предмете { GetInfoItems items = new GetInfoItems(); items.listItems = Model.Map.ListItems; CTransfers.Writing(items, nStream); } }
public override void Process(ModelServer Model) { this.Model = Model; switch (action.act) { case ClassLibrary.Action.action.moveUp: Model.ListMove[num].moveUp = true; break; case ClassLibrary.Action.action.moveDown: Model.ListMove[num].moveDown = true; break; case ClassLibrary.Action.action.noveLeft: Model.ListMove[num].moveLeft = true; break; case ClassLibrary.Action.action.moveRight: Model.ListMove[num].moveRight = true; break; case ClassLibrary.Action.action.shiftDown: Model.ListMove[num].shift = true; break; case ClassLibrary.Action.action.stopUp: Model.ListMove[num].moveUp = false; break; case ClassLibrary.Action.action.stopDown: Model.ListMove[num].moveDown = false; break; case ClassLibrary.Action.action.stopLeft: Model.ListMove[num].moveLeft = false; break; case ClassLibrary.Action.action.stopRight: Model.ListMove[num].moveRight = false; break; case ClassLibrary.Action.action.shiftUp: Model.ListMove[num].shift = false; break; } }
public void CheckDataTest_2_1_errorPassword() //Если на вход поступает список из двух пользователей и иформация об игроке, но пароль не верен { //arrange ModelServer model = new ModelServer(); ControllerServer controller = new ControllerServer(model); List <GeneralInfo> listG = new List <GeneralInfo>(); GeneralInfo gen = new GeneralInfo(); gen.Name = "Test_1"; gen.Password = "******"; listG.Add(gen); gen = new GeneralInfo(); gen.Name = "Test_2"; gen.Password = "******"; listG.Add(gen); GeneralInfo userG = new GeneralInfo(); userG.Name = "Test_1"; userG.Password = "******"; bool expected = false; //act bool actual = ControllersS.cInfoUsers.CheckData(listG, userG); //assert Assert.AreEqual(expected, actual); }
public override void Process(ModelServer Model) { for (int i = 1; i < Model.ListUsers[num].Items.Length; i++) { if (Model.ListUsers[num].Items[i].Name == null) { Model.ListUsers[num].Items[i] = item; //Кладём вещь игроку lock (Model.Map.ListItems) { for (int j = 0; j < Model.Map.ListItems.Count; j++) { if (Model.Map.ListItems[j].IdItem == item.IdItem) { Model.Map.ListItems.RemoveAt(j); //Удаляем вещь с карты } } } foreach (NetworkStream nStream in Model.ListNs) //Даём актуальную инфу всем игрокам об удалённом с карты предмете { GetInfoItems items = new GetInfoItems(); items.listItems = Model.Map.ListItems; CTransfers.Writing(items, nStream); } break; } } }
public override void Process(ModelServer Model) { this.Model = Model; try { Model.ListUsers[num].Name = name; } catch { throw new Exception(); } }
public override void Process(ModelServer Model) { this.Model = Model; byte[] ping = new byte[1]; ping[0] = 2; PingInfoClient pic = new PingInfoClient(); CTransfers.Writing(pic, Model.ListNs[this.num]); }
public VMServer(ModelServer modelServer) { _modelServer = modelServer; // ConId = modelServer.ConId; // Ip = modelServer.Ip; // Port = modelServer.Port; // IsAvailable = modelServer.IsAvailable; // Name = modelServer.Name; }
public override void Process(ModelServer Model) { this.model = Model; Model.ListUsers[num].flagRecharge = false; if (!Model.ListUsers[num].flagShoting && !Model.ListUsers[num].flagWaitShoting && Model.workingGame) { Model.ListUsers[num].flagShoting = true; Model.ListShoting[num] = new Thread(new ParameterizedThreadStart(ShotUser)); Model.ListShoting[num].Start(Model.ListUsers[num]); } }
public void Dispose() { #if UNITY_EDITOR || !(UNITY_IOS || UNITY_ANDROID || UNITY_WSA || UNITY_WEBGL) ConnectionManager.Connection.UnadvertiseService(ModelServer.ModelServiceName); ConnectionManager.Connection.UnadvertiseService(ModelServer.TextureServiceName); ConnectionManager.Connection.UnadvertiseService(ModelServer.FileServiceName); ConnectionManager.Connection.UnadvertiseService(ModelServer.SdfServiceName); modelServer?.Dispose(); modelServer = null; #endif }
public void GenerateItemsTests_6000x6000() //Генерация предметов на карте при нормальных размерах { ModelServer model = new ModelServer(); ControllerServer controller = new ControllerServer(model); model.Map.MapBorders = new Rectangle(0, 0, 6000, 6000); bool expected = true; bool actual = ControllersS.cMap.GenerateItems(); Assert.AreEqual(expected, actual); }
public void RemoveTest() //Тест очистки карты { //arrange ModelServer model = new ModelServer(); ControllerServer controller = new ControllerServer(model); bool expected = true; //act bool actual = model.Map.Remove(); //assert Assert.AreEqual(expected, actual); }
public void RandomTreeTests_6000x6000() //Генерация предметов на карте при нормальных размерах { ModelServer model = new ModelServer(); ControllerServer controller = new ControllerServer(model); model.Map.MapBorders = new Rectangle(0, 0, 6000, 6000); model.Map.bordersForUsers = new bool[model.Map.mapBorders.Width, model.Map.mapBorders.Height]; model.Map.bordersForBullets = new bool[model.Map.mapBorders.Width, model.Map.mapBorders.Height]; bool expected = true; bool actual = ControllersS.cMap.RandomTree(); Assert.AreEqual(expected, actual); }
public void PlayerSaveTest_null() //В метод поступает пустое значение { //arrange ModelServer model = new ModelServer(); ControllerServer controller = new ControllerServer(model); List <GeneralInfo> listG = null; bool expected = false; //act bool actual = ControllersS.cInfoUsers.PlayerSave(listG); //assert Assert.AreEqual(expected, actual); }
public void CheckDataTest_null_null() //Если на вход поступает пустой список пользователей и пустая иформация об игроке { //arrange ModelServer model = new ModelServer(); ControllerServer controller = new ControllerServer(model); List <GeneralInfo> listG = null; GeneralInfo userG = null; bool expected = false; //act bool actual = ControllersS.cInfoUsers.CheckData(listG, userG); //assert Assert.AreEqual(expected, actual); }
public async Task <List <ModelDatabase> > GetDataBases(ModelServer _server) { var options = new JsonSerializerOptions() { PropertyNamingPolicy = JsonNamingPolicy.CamelCase }; List <ModelDatabase> databases = new List <ModelDatabase>(); var streamDbases = client.GetStreamAsync($"http://{_server.IpAddress}:{_server.Port}/api/DatabaseService/GetAllByServer?serverId={_server.ServersId}"); databases = await JsonSerializer.DeserializeAsync <List <ModelDatabase> >(await streamDbases, options); return(databases); }
public void NewCenterZone_600x600_610610_10_falseReturned() //Создание нового центра зоны при существующей границе карты, //Предыдущем центре и ридусе, но центр выходит за пределы границы карты. { //arrange ModelServer model = new ModelServer(); ControllerServer controller = new ControllerServer(model); Rectangle rect = new Rectangle(0, 0, 600, 600); Point center = new Point(610, 610); int radius = 10; bool expected = false; //act bool actual = model.Map.NextZone.NewCenterZone(rect, center, radius); //assert Assert.AreEqual(expected, actual); }
public async Task Restart(bool enableFileScheme, CancellationToken token = default) { #if UNITY_EDITOR || !(UNITY_IOS || UNITY_ANDROID || UNITY_WSA || UNITY_WEBGL) string rosPackagePathExtras = await GetPathExtras(token); modelServer?.Dispose(); modelServer = new ModelServer(rosPackagePathExtras, enableFileScheme); if (enableFileScheme) { Logger.Warn( "Iviz.ModelService started. Uris starting with 'package://' and 'file://' are now enabled." + " This grants access to all files from the outside"); } else if (modelServer.NumPackages == 0) { Logger.Info( "Iviz.Model.Service started. However, no packages were found. Try creating a ros_package_path file with a list of ROS root paths."); return; } else { Logger.Info( "Iviz.ModelService started. Uris starting with 'package://' are now enabled." + " This grants access to all files within the ROS packages."); } ConnectionManager.Connection.AdvertiseService <GetModelResource>( ModelServer.ModelServiceName, ModelCallback); ConnectionManager.Connection.AdvertiseService <GetModelTexture>( ModelServer.TextureServiceName, modelServer.TextureCallback); ConnectionManager.Connection.AdvertiseService <GetFile>( ModelServer.FileServiceName, modelServer.FileCallback); ConnectionManager.Connection.AdvertiseService <GetSdf>( ModelServer.SdfServiceName, modelServer.SdfCallback); Logger.Info($"Iviz.Model.Service started with {modelServer.NumPackages} paths."); #endif }
public override void Process(ModelServer Model) { this.Model = Model; Model.ListUsers[num].flagRecharge = false; Model.ListUsers[num].flagWaitShoting = true; Model.ListShoting[num].Abort(); if (Model.ListUsers[num].Items[Model.ListUsers[num].thisItem] is Grenade) { (Model.ListUsers[num].Items[Model.ListUsers[num].thisItem] as Grenade).Grena.flagFly = true; } Model.ListUsers[num].flagShoting = false; short Time = Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].Time; Thread t = new Thread(() => { Thread.Sleep(Time); Model.ListUsers[num].flagWaitShoting = false; }); t.Start(); Model.ListUsers[num].thisItem = numItems; }
public void OnConnectionDisconnect(int conId) { // _lstModelServer = new List<ModelServer>(); // _lstModelServer.Add(new ModelServer { ConId = 0, Ip = "", IsAvailable = false, Name = "1234567", Port = 11 }); if (_lstModelServer.Count >= conId - 1) { // _lstModelServer[conId].IsAvailable = false; // _lstModelServer[conId].Name = "123"; ModelServer oldValue = _lstModelServer[conId]; _lstModelServer[conId] = new ModelServer { IsAvailable = false, ConId = oldValue.ConId, Ip = oldValue.Ip, Name = oldValue.Name, Port = oldValue.Port }; // CollVMServers[conId].IsAvailable = false; } else { Error("OnConnectionDisconnect connection not found"); } _dispatcher.Invoke(new Action(() => { ModelVMSynchro(_lstModelServer, CollVMServers, VMServer.Create); } )); }
public override void Process(ModelServer Model) { this.Model = Model; if (Model.ListUsers[num].flagShoting && !Model.ListUsers[num].flagWaitShoting) { Model.ListUsers[num].flagWaitShoting = true; Model.ListShoting[num].Abort(); if (Model.ListUsers[num].Items[Model.ListUsers[num].thisItem] is Grenade) { (Model.ListUsers[num].Items[Model.ListUsers[num].thisItem] as Grenade).Grena.flagFly = true; } Model.ListUsers[num].flagShoting = false; Thread t = new Thread(() => { Thread.Sleep(Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].Time); try { Model.ListUsers[num].flagWaitShoting = false; } catch { } }); t.Start(); } }
public override void Process(ModelServer Model) { this.Model = Model; Model.ListUsers[num].Rotate = angels; }
public static VMServer Create(ModelServer modelServer) { return(new VMServer(modelServer)); }
public CStart(ModelServer model) { this.model = model; }
public override void Process(ModelServer Model) { this.Model = Model; Model.ListUsers[num].mouseLocation = mouse; }
public CInfoUsers(ModelServer model) { this.model = model; }
public override void Process(ModelServer Model) { this.Model = Model; try { if (Model.ListUsers[num].Items[Model.ListUsers[num].thisItem] is Weapon && Model.ListUsers[num].Items[Model.ListUsers[num].thisItem] != null) { Model.ListUsers[num].flagRecharge = true; Model.ListShoting[num].Abort(); Model.ListUsers[num].flagShoting = false; Thread t = new Thread(() => { int time = 0; while (Model.ListUsers[num].flagRecharge) { time++; Thread.Sleep(100); if (time >= Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].TimeReloading) { switch ((Model.ListUsers[num].Items[Model.ListUsers[num].thisItem] as Weapon).TypeBullets) { case Weapon.typeBullets.Gun: { Model.ListUsers[num].GunBullets += Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].Count; Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].Count = Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].MaxCount; Model.ListUsers[num].GunBullets -= Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].MaxCount; if (Model.ListUsers[num].GunBullets < 0) { Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].Count += Model.ListUsers[num].GunBullets; Model.ListUsers[num].GunBullets = 0; } break; } case Weapon.typeBullets.Pistol: { Model.ListUsers[num].PistolBullets += Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].Count; Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].Count = Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].MaxCount; Model.ListUsers[num].PistolBullets -= Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].MaxCount; if (Model.ListUsers[num].PistolBullets < 0) { Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].Count += Model.ListUsers[num].PistolBullets; Model.ListUsers[num].PistolBullets = 0; } break; } case Weapon.typeBullets.Shotgun: { Model.ListUsers[num].ShotgunBullets += Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].Count; Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].Count = Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].MaxCount; Model.ListUsers[num].ShotgunBullets -= Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].MaxCount; if (Model.ListUsers[num].ShotgunBullets < 0) { Model.ListUsers[num].Items[Model.ListUsers[num].thisItem].Count += Model.ListUsers[num].ShotgunBullets; Model.ListUsers[num].ShotgunBullets = 0; } break; } } Model.ListUsers[num].flagRecharge = false; } } }); t.Start(); } } catch { }; }
public CMap(ModelServer model) { this.model = model; }
public IActionResult Add(ModelServer _database) { _repository.Add(_database); return(Ok()); }