static void Main(string[] args) { Vehicle BasicVehicle = new Vehicle(); BasicVehicle.Move(); AirVehicle Helicopter = new AirVehicle(); Helicopter.Move(); WaterVehicle Boat = new WaterVehicle(); Boat.Move(); LandVehicle Tank = new LandVehicle(); Tank.Move(); Weapon BasicWeapon = new Weapon(); BasicWeapon.Shoot(); SmallCaliberWeapon M9 = new SmallCaliberWeapon(); M9.Shoot(); IndirectFireWeapon M203 = new IndirectFireWeapon(); M203.Shoot(); DirectFireWeapon M82 = new DirectFireWeapon(); M82.Shoot(); }
//****************************************************************************************************************************** // // FUNCTIONS // //****************************************************************************************************************************** //////////////////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> // Called before Start(). /// </summary> void Start() { capsuleCollider = this.gameObject.AddComponent <CapsuleCollider>(); capsuleCollider.radius = healRadius; capsuleCollider.isTrigger = true; capsuleCollider.height = healRadiusHeight; capsuleCollider.center = new Vector3(0, yOffset, 0); _AirVehicle = GetComponent <AirVehicle>(); }
//////////////////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> // Adds a WorldObject to the weighted target list /// </summary> /// <param name="target"></param> public override void AddPotentialTarget(WorldObject target) { // Target can ONLY be a air vehicle AirVehicle air = target.GetComponent <AirVehicle>(); if (air != null) { base.AddPotentialTarget(air); } }
//****************************************************************************************************************************** // // FUNCTIONS // //****************************************************************************************************************************** //////////////////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> // Adds a WorldObject to the weighted target list /// </summary> /// <param name="target"></param>. public override void AddPotentialTarget(WorldObject target) { // The siege engine CANNOT fire at air units so never allow it to reach the target list AirVehicle air = target.GetComponent <AirVehicle>(); if (air == null) { base.AddPotentialTarget(target); } }
//////////////////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> // /// </summary> /// <param name="worldObject"></param> public override bool ForceChaseTarget(WorldObject objTarget, bool playerCommand = false) { // Target can ONLY be a air vehicle AirVehicle air = objTarget.GetComponent <AirVehicle>(); if (air != null) { return(base.ForceChaseTarget(objTarget, playerCommand)); } return(false); }
//////////////////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> // /// </summary> /// <param name="worldObject"></param> public override bool TryToChaseTarget(WorldObject objTarget) { // Target can ONLY be a air vehicle AirVehicle air = objTarget.GetComponent <AirVehicle>(); if (air == null) { return(base.ForceChaseTarget(objTarget)); } return(false); }
//////////////////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> // /// </summary> /// <param name="worldObject"></param> public override bool ForceChaseTarget(WorldObject objTarget, bool playerCommand = false) { // The siege engine CANNOT fire at air units so never allow it to reach the target list AirVehicle air = objTarget.GetComponent <AirVehicle>(); if (air == null) { return(base.ForceChaseTarget(objTarget, playerCommand)); } return(false); }
static void Main(string[] args) { var airplane = new AirVehicle { Wheels = 10, Doors = 9, PassengerCapacity = 50, Winged = true, MaxAirSpeed = 500 }; var cessna = new AirVehicle { Wheels = 3, Doors = 3, PassengerCapacity = 2, Winged = true, MaxAirSpeed = 300, MaxWaterSpeed = 200 }; var motorcycle = new LandVehicle { Wheels = 2, PassengerCapacity = 2, MaxLandSpeed = 150, }; var bus = new LandVehicle { Wheels = 6, Doors = 4, PassengerCapacity = 50, MaxLandSpeed = 80, TransmissionType = "automatic", }; var jetski = new WaterVehicle { PassengerCapacity = 2, MaxWaterSpeed = 60, }; var yacht = new WaterVehicle { Doors = 25, PassengerCapacity = 100, TransmissionType = "manual", MaxWaterSpeed = 100, EngineVolume = 50 }; // Build a collection of all vehicles that operate on water var airVehicles = new List <AirVehicle>(); airVehicles.Add(airplane); airVehicles.Add(cessna); // Build a collection of all vehicles that operate on roads var landVehicles = new List <LandVehicle>(); landVehicles.Add(motorcycle); landVehicles.Add(bus); // Build a collection of all vehicles that fly var waterVehicles = new List <WaterVehicle>(); waterVehicles.Add(jetski); waterVehicles.Add(yacht); // With a single `foreach`, have each water vehicle Drive() foreach (var waterThing in waterVehicles) { waterThing.Start(); waterThing.Drive(); } // With a single `foreach`, have each vehicle Fly() foreach (var airThing in airVehicles) { airThing.Start(); airThing.Fly(); } // With a single `foreach`, have each road vehicle Drive() foreach (var landThing in landVehicles) { landThing.Start(); landThing.Drive(); } Console.ReadLine(); }
public ulong RegisterVehicle(AirVehicle vehicle) { return(base.RegisterVehicle(vehicle)); }
static void Main(string[] args) { var jumbojet = new AirVehicle { Name = "747", Wheels = 3, Doors = 4, PassengerCapacity = 200, Winged = true, MaxAirSpeed = 300 }; var airforceone = new AirVehicle { Name = "Air Force One", Wheels = 3, Doors = 4, PassengerCapacity = 20, Winged = true, MaxAirSpeed = 400 }; var ferrari = new LandVehicle { Name = "Ferrari", Wheels = 4, Doors = 2, PassengerCapacity = 2, TransmissionType = "Manual", MaxLandSpeed = 120 }; var minivan = new LandVehicle { Name = "Mini Van", Wheels = 4, Doors = 4, PassengerCapacity = 7, TransmissionType = "Auotmatic", MaxLandSpeed = 50 }; var jetski = new WaterVehicle { Name = "Jetski", PassengerCapacity = 2, MaxWaterSpeed = 60.2 }; var speedboat = new WaterVehicle { Name = "Speedboat", PassengerCapacity = 6, MaxWaterSpeed = 86.3 }; // Build a collection of all vehicles that fly var flyingthings = new List <AirVehicle>(); flyingthings.Add(jumbojet); flyingthings.Add(airforceone); // With a single `foreach`, have each vehicle Fly() foreach (var aircraft in flyingthings) { aircraft.Fly(); } // Build a collection of all vehicles that operate on roads var landvehicles = new List <LandVehicle>(); landvehicles.Add(ferrari); landvehicles.Add(minivan); // With a single `foreach`, have each road vehicle Drive() foreach (var car in landvehicles) { car.Drive(); } // Build a collection of all vehicles that operate on water var watervehicles = new List <WaterVehicle>(); watervehicles.Add(jetski); watervehicles.Add(speedboat); // With a single `foreach`, have each water vehicle Drive() foreach (var vehicle in watervehicles) { vehicle.Drive(); } Console.ReadLine(); }