void boom() { boomEffect(); if (!PhotonNetwork.isMasterClient) { return; } // MasterClient进行爆炸判断 Collider[] others = Physics.OverlapSphere(gameObject.transform.position, damageRadius); List <string> damagedTanks = new List <string>(); if (others.Length == 0) { return; } for (int i = 0; i < others.Length; i++) { //Debug.Log (others[i].gameObject.name); TankModel tankModel = others[i].gameObject.GetComponentInParent <TankModel>(); if (others [i].gameObject.tag == "TankPart" && !damagedTanks.Contains(tankModel.gameObject.name)) { damagedTanks.Add(tankModel.gameObject.name); tankModel.TakeDamage(damage, owner); } } }
private TankController CreateNewTank() { TankModel model = new TankModel(TankType.None, 5, 100f); TankController tank = new TankController(model, tankView); return(tank); }
void CreateTank(Vector3 transform) { TankModel tankModel = new TankModel(10, 100f); tankView.GetComponent <Transform>().position = transform; TankController tank = new TankController(tankModel, tankView); }
/// <summary> /// Tank constructor. /// </summary> /// <param name="x">X coordinate of tank.</param> /// <param name="y">Y coordinate of tank.</param> /// <param name="heading">Heading of tank, rad.</param> public Tank(double x, double y, double heading) { Position = new PointD(x, y); Heading = TurretHeading = heading; _model = new TankModel(this); }
public void AddTankModel(Vector3 position, TankStatusMode tankStatus) { TankModel newDModel = new TankModel(tankStatus, tankModel, Matrix.CreateScale(0.08f) * Matrix.CreateTranslation(position.X, position.Y, position.Z), new Vector3(0, 1, 0), sceneManager.GetCity().GetCityMap()); octreeRoot.Add(newDModel); tank = newDModel; }
void CreateModel() { // upon start up ... instantiate the model var modelGo = (GameObject)GameObject.Instantiate( modelPrefab, transform.position, Quaternion.identity, this.transform ); model = modelGo.GetComponent <TankModel>(); spawnOrder++; gameObject.name = "TankSpawn" + spawnOrder; // add two child network transforms gameObject.SetActive(false); var netChild = gameObject.AddComponent <NetworkTransformChild>(); netChild.target = modelGo.transform; netChild = gameObject.AddComponent <NetworkTransformChild>(); netChild.target = model.turret.transform; gameObject.SetActive(true); // manually set center of mass for tank rb.centerOfMass = model.centerOfMass.position; }
// Use this for initialization void Start() { tank = GetComponent <TankModel>(); bar = GameObject.Find("ShooterCanvas/Scrollbar Vertical").GetComponent <Scrollbar>(); GameObject.Find("ShooterCanvas/ShootButton").GetComponent <Button>().onClick.AddListener(delegate { tank.Shoot(); }); }
public TankController CreateTank(TankScriptableObject tankScriptableObject) { randomSpawnPos = new Vector3(Random.Range(-42, 43), 2, Random.Range(39, -43)); TankModel tankModel = new TankModel(tankScriptableObject); TankController tankController = new TankController(TankView, tankModel, randomSpawnPos, Quaternion.identity); return(tankController); }
public TankController(TankModel tankModel, TankView tankView) { TankModel = tankModel; TankView = tankView; BulletVariants = tankModel.BulletVariants; TankView.Initialize(this); TankView.RandomSpawning(); }
public TankController(TankModel model, TankView prefab) { tankModel = model; tankView = GameObject.Instantiate <TankView>(prefab); //X location where new tank is spawned Debug.Log("Tank type -" + model.tankType); tankView.Init(this); //tankView.SetTankPos(4); }
public TankController(TankModel tankModel, TankView tankPrefab) { TankView = GameObject.Instantiate <TankView>(tankPrefab); TankModel = tankModel; TankView.InitTankController(this); //Debug.Log("Tank Type"+TankType.); //TankView.Speed = tankModel.Speed; //TankView.Health = tankModel.Health; //TankView.Type = tankModel.Type; }
public TankController(TankModel tankModel, TankView tankPrefab) { TankModel = tankModel; // GameObject go = GameObject.Instantiate(tankPrefab); // TankView = go.GetComponent<TankView>(); TankView = GameObject.Instantiate <TankView>(tankPrefab); Debug.Log("Tank view controller created", TankView); }
private TankController SpawnTank() { TankScriptableObjects tankScriptableObject = tankConfigs[1]; TankModel TankModel = new TankModel(tankScriptableObject); // TankModel TankModel = new TankModel(TankType.None, 0.1f, 100f, 4); tankController = new TankController(TankModel, tankPrefab); return(tankController); }
void FindTankModel() { GameObject modelGo = GameObject.Find("ModelPosition"); if (modelGo != null) { var playerSetupGo = modelGo.transform.Find("TankModel"); // Debug.Log("found tankModel: " + playerSetupGo); tankModel = playerSetupGo.GetComponent <TankModel>(); } }
public void SetTankDetails(TankModel model) { mvtSpeed = model.mvtSpeed; rotatingSpeed = model.rotatingSpeed; maxHealth = model.health; Color color = model.TankColor; //Debug.Log("color :" + color); tankController.SetTankColor(color, renderers); shootDelay = model.reloadTime; }
public void SetEnemyDetails(TankModel model) { mvtSpeed = model.mvtSpeed; rotatingSpeed = model.rotatingSpeed; maxHealth = model.health; //Color color = model.TankColor; for (int i = 0; i < renderers.Length; i++) { renderers[i].material.color = Color.red; } }
void Start() { cam.setPlayer(this.transform); rigidBody = GetComponent <Rigidbody2D> (); model = GetComponent <TankModel> (); if (guns.Length == 0 || guns.Length != bullets.Length) { throw new UnityException("no weapons on Player or bullets does not match!"); } gunIndex = 0; }
public void Draw() { Bitmap flag = new Bitmap(fieldSize, fieldSize); Graphics flagGraphics = Graphics.FromImage(flag); BallView.DrawBall(BallModel.GetBall(), flagGraphics); BlocksView.DrawBlocks(BlockModel.GetBlocks(), flagGraphics); TankView.DrawTanks(TankModel.GetTanks(), flagGraphics); AppleView.DrawApples(AppleModel.GetApples(), flagGraphics); pictureBox.Image = flag; }
private void CreateNewObject(TankScriptableObject tankScriptableObject) { TankView tankView; TankModel tankModel = new TankModel(tankScriptableObject.health, tankScriptableObject.force, tankScriptableObject.torque, tankScriptableObject.bulletVariants); tankView = GameObject.Instantiate <TankView>(tankViewPrefab); tankView.ColorSelector(tankScriptableObject.tankColor); TankController tankController = new TankController(tankModel, tankView); }
private TankController CreateNewTank(int index) { TankScriptableObject tankScriptableObject = tankList.tanks[index]; Debug.Log("Creating Tank with type: " + tankScriptableObject.TankName); TankModel model = new TankModel(tankScriptableObject); //TankController tank = new TankController(model, tankView); TankController tank = servicePoolTank.GetTank(model, tankView); tank.Enable(); return(tank); }
private TankController CreateTank(int index) { //TankScriptableObject tankScriptableObject = tankConfigurations[2]; TankScriptableObject tankScriptableObject = tankList.tanks[index]; Debug.Log("Tank Type" + tankScriptableObject.tankName); TankModel model = new TankModel(tankScriptableObject); TankController tank = new TankController(model, tankView); return(tank); }
/// <inheritdoc /> public override void Draw(GameTime gameTime) { Game.Background = Color.CornflowerBlue; GraphicsDevice.DepthStencilState = DepthStencilState.Default; // Calculate the camera matrices. var time = Convert.ToSingle(gameTime.TotalGameTime.TotalSeconds); // Draw the tank model. TankModel.Draw(TankWorld * Matrix.CreateRotationY(time * 0.1f), Camera.View, Camera.Projection); base.Draw(gameTime); }
public ObservableCollection <Model.TankModel> getTankList(long stationid) { DataTable table = BusinessHelper.ListAllTank(stationid); ObservableCollection <Model.TankModel> _FuelTanks = new ObservableCollection <Model.TankModel>(); try { if (table.Rows.Count != 0) { foreach (DataRow _datarow in table.Rows) { TankModel _tm = new TankModel(); _tm.TankId = Convert.ToInt64(_datarow["tankid"]); _tm.Name = _datarow["tankname"].ToString(); _tm.Description = _datarow["tankdesc"].ToString(); _tm.StationId = (UInt64)stationid; _tm.StationName = _datarow["stationname"].ToString(); _tm.MaxCapacity = Convert.ToDouble(_datarow["capacity"]); _tm.OffsetLevel = Convert.ToDouble(_datarow["offset"]); _tm.FuelId = Convert.ToInt64(_datarow["fuelid"]); _tm.Capacity = 0; _tm.FuelLevel = 0; _tm.WaterLevel = 0; _tm.Thermometer = 25.00; _tm.WaterCapacity = 0; _tm.IsImportFinished = true; _tm.HasData = false; _tm.SavedDataCommand = this.SaveDataCommand; _tm.DetailCommand = this.DetailCommand; _tm.FuelImportCommand = this.FuelImportCommand; _tm.FinishCommand = this.FinishCommand; _FuelTanks.Add(_tm); } } else { MessageBox.Show("Declare Param First!!!"); return(null); } return(_FuelTanks); } catch (Exception ex) { App.Log.LogException(ex); return(null); } }
public async Task <GameDataModel> SimulateAsync(string gameId, TankModel tank1, TankModel tank2, GameMapModel map) { var gameData = await _resultsApiClient.GetScoreAsync(gameId); GameSimulator simulator = new GameSimulator(gameData.Id, Environment.GetEnvironmentVariable("WEATHER_API_URL"), map); simulator.GameFinished += OnGameFinished; gameData.Status = GameStatus.InProgress; await _resultsApiClient.UpdateAsync(gameData); simulator.Start(tank1, tank2); return(gameData); }
public TankController(TankModel tankModel, TankView tankPrefab) //public TanController(TankModel tankModel, GameObject tankPrefab) { TankModel = tankModel; //GameObject go = GameObject.Instantiate(tankPrefab); //TankView = go.GetComponent<TankView>(); TankView = GameObject.Instantiate <TankView>(tankPrefab); TankView.SetController(this); TankModel.SetTankController(this); TankView.SetSpeed(TankModel.Speed); TankView.SetTurn(TankModel.Turn); TankView.Sethealth(TankModel.Health); }
public Tank(string name, TankModel model) { try { this.name = name; this.TankModel = model; this.health = rnd.Next(0, 100); this.strength = rnd.Next(0, 100); this.agility = rnd.Next(0, 100); } catch (Exception e) { Console.WriteLine(e.Message); } }
public void Start( TankModel tank1, TankModel tank2) { var tankEntity1 = BuildTank(tank1); var tankEntity2 = BuildTank(tank2); tankEntity1.Enemy = tankEntity2; tankEntity2.Enemy = tankEntity1; _tanks.Add(tankEntity1); _tanks.Add(tankEntity2); Logger.Log("Starting the simulation..."); _gameThread = new Thread(() => Run()); _gameThread.Start(); }
public void BindPlayer2Tank() { foreach (GameObject tankOBJ in GameObject.FindGameObjectsWithTag("Player")) { tank_list.Add(tankOBJ); foreach (PhotonPlayer p in PhotonNetwork.playerList) { print((int)p.CustomProperties["ID"] + " :" + tankOBJ.GetPhotonView().viewID); if ((int)p.CustomProperties["ID"] == tankOBJ.GetPhotonView().viewID) { tankOBJ.name = p.CustomProperties["Team"].ToString(); break; } } if ((int)PhotonNetwork.player.CustomProperties["ID"] == tankOBJ.GetPhotonView().viewID) { localTank = tankOBJ; tankModel = localTank.GetComponent <TankModel>(); if (PhotonNetwork.player.CustomProperties["Character"].ToString() == "driver") { UICtrl.EnableDriverCanvas(); UICtrl.DisableShooterCanvas(); tankModel.driverCamera.SetActive(true); localTank.GetComponent <DriverController>().enabled = true; localTank.GetComponent <ShooterController>().enabled = false; } else if (PhotonNetwork.player.CustomProperties["Character"].ToString() == "shooter") { UICtrl.DisableDriverCanvas(); UICtrl.EnableShooterCanvas(); localTank.GetComponent <DriverController>().enabled = false; localTank.GetComponent <ShooterController>().enabled = true; tankModel.shooterCamera.SetActive(true); } UICtrl.EnableHPSlider(); UICtrl.SetMaxHP(tankModel.maxHealth); UICtrl.SetMinHP(0); UICtrl.SetHP(tankModel.health); } } photonView.RPC("ConfirmReady", PhotonTargets.All); }
public Tank( string id, TankModel model, Vector2i position, GameMap gameMap) : base(gameMap) { TankId = id; Name = model.Name; Position = position; Barrel = new TankBarrel(model.Barrel); MainBody = new TankMainBody(); RoadWheel = new TankRoadWheels(); _remainingLandmines = 2; // initialize number of landmines }
private Tank BuildTank(TankModel tankModel) { var position = new Vector2i() { X = _random.Next(_map.Size), Y = _random.Next(_map.Size) }; while (_map.GetTile(position).Solid) // finding an available tile { position = new Vector2i() { X = _random.Next(_map.Size), Y = _random.Next(_map.Size) }; } Logger.Log($"Placing {tankModel.Name} at ({position.X}, {position.Y})."); return(new Tank(tankModel.Id, tankModel, position, _map)); }