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; }
public SceneManager(Game game) : base(game) { this.game = game; floorEffect = Game.Content.Load <Effect>("effects"); player = Game.Content.Load <PlayerData>("Configuration/PlayerData"); tankmode = Game.Content.Load <Mode[]>(@"Configuration/TankMode"); world = Game.Content.Load <WorldMatrix>("Configuration/WorldData"); tankStatus = new TankStatusMode(tankmode[0]); city = new City(); background = new BackGround(game); inputHandler = new InputHandler(); textHandler = new TextHandler(); levelHander = new GameLevelHandler(Game.Content); explosionHandler = new ExplosionHandler(game); gameMenu = new GameMenuScreen(game, levelHander); worldData = new GameWorldData(world); camera = new FirstPersonCamera(game); background.InitializeModel(floorEffect); camera.prepareCamera(); camera.setWeapon(Game.Content.Load <Model>(@"Models\weapon")); }
public TankModel(TankStatusMode tankStaus, Model inModel, Matrix inWorldMatrix, Vector3 newDirection, int[,] cityMap) : base(inModel, inWorldMatrix, newDirection) { leftBackWheelBone = inModel.Bones["l_back_wheel_geo"]; rightBackWheelBone = inModel.Bones["r_back_wheel_geo"]; leftFrontWheelBone = inModel.Bones["l_front_wheel_geo"]; rightFrontWheelBone = inModel.Bones["r_front_wheel_geo"]; leftSteerBone = inModel.Bones["l_steer_geo"]; rightSteerBone = inModel.Bones["r_steer_geo"]; turretBone = inModel.Bones["turret_geo"]; cannonBone = inModel.Bones["canon_geo"]; hatchBone = inModel.Bones["hatch_geo"]; // Store the original transform matrix for each animating bone. leftBackWheelTransform = leftBackWheelBone.Transform; rightBackWheelTransform = rightBackWheelBone.Transform; leftFrontWheelTransform = leftFrontWheelBone.Transform; rightFrontWheelTransform = rightFrontWheelBone.Transform; leftSteerTransform = leftSteerBone.Transform; rightSteerTransform = rightSteerBone.Transform; turretTransform = turretBone.Transform; cannonTransform = cannonBone.Transform; hatchTransform = hatchBone.Transform; // Allocate the transform matrix array. worldMatrix = inWorldMatrix; this.direction = newDirection; this.cityMap = cityMap; this.tankStaus = tankStaus; //targetDestination = new Vector3(700,0,-700); finder = new PathFinder(); finder.SetUpMap(cityMap); pathToTargetDestination = new LinkedList <Vector2>(); isMoving = false; currentTurnedAngle = 0; ActivateWanderMode(); cannonMovingUp = true; enableAttack = false; produceHealthGlobeCD = 30000; timeSinceLastHealthGlobeProduced = 0; healthGlobe = 0; }
public void Initialize(int[] enemyData, TankStatusMode tankstatus, GameTime gametime, PlayerData player) { AddPlayerModel(new Vector3(player.startPosition_x, 0, player.startPosition_z)); AddTankModel(new Vector3(0, 0, 0), tankstatus); }