private void Start() { // get the ice creator script from the ice creator iceCreatorScript = iceCreator.GetComponent <IceCreator>(); // set the ice creator to be at the furthest point the tool can hit iceCreator.transform.position = playerCamera.transform.position + playerCamera.transform.forward * maxRange; // point the tool towards the ice creator tool.LookAt(iceCreator.transform); // point the laser start points towards the ice creator meltLaserStartPoint.LookAt(iceCreator.transform); freezeLaserStartPoint.LookAt(iceCreator.transform); // set the scale of the ice creator using iceCreatorRelativeSize, relative to the effect radius iceCreator.transform.localScale = new Vector3(effectRadius * 0.5f * iceCreatorRelativeSize, effectRadius * 0.5f * iceCreatorRelativeSize, effectRadius * 0.5f * iceCreatorRelativeSize); // set the ice creator to be inactive iceCreator.SetActive(false); meltLaser = new Laser(meltLaserObject, meltLaserStartPoint, playerCamera.transform.position, maxRange); freezeLaser = new Laser(freezeLaserObject, freezeLaserStartPoint, playerCamera.transform.position, maxRange); // set the crosshair to use the out of range image crosshair.SetImage(false); // get the particle system component from the particle emitters steamParticleSystem = steamParticleEmitter.GetComponent <ParticleSystem>(); sleetParticleSystem = sleetParticleEmitter.GetComponent <ParticleSystem>(); mistParticleSystem = mistParticleEmitter.GetComponent <ParticleSystem>(); }
public static void FactoryMain() { // Head Console.WriteLine("\n\n" + new String('-', 20)); Console.WriteLine("Factory method"); Console.WriteLine(new String('-', 20)); // Create factories LevelCreator iceCreator = new IceCreator(); LevelCreator oasisCreator = new OasisCreator(); // Create concrete objects GameLevel iceLevel = iceCreator.CreateLevel(); GameLevel oasisLevel = oasisCreator.CreateLevel(); // Print level names iceLevel.PrintLevelName(); oasisLevel.PrintLevelName(); }