public override void Start() { base.Start(); radioSpeakerName = TextManager.Get("Tutorial.Radio.Speaker"); officer = Character.Controlled; var handcuffs = officer.Inventory.FindItemByIdentifier("handcuffs"); handcuffs.Unequip(officer); officer.Inventory.RemoveItem(handcuffs); var stunbaton = officer.Inventory.FindItemByIdentifier("stunbaton"); stunbaton.Unequip(officer); officer.Inventory.RemoveItem(stunbaton); var ballistichelmet = officer.Inventory.FindItemByIdentifier("ballistichelmet"); ballistichelmet.Unequip(officer); officer.Inventory.RemoveItem(ballistichelmet); var bodyarmor = officer.Inventory.FindItemByIdentifier("bodyarmor"); bodyarmor.Unequip(officer); officer.Inventory.RemoveItem(bodyarmor); var gunOrder = Order.PrefabList.Find(order => order.AITag == "operateweapons"); officer_gunIcon = gunOrder.SymbolSprite; officer_gunIconColor = gunOrder.Color; // Other tutorial items tutorial_mechanicFinalDoorLight = Item.ItemList.Find(i => i.HasTag("tutorial_mechanicfinaldoorlight")).GetComponent <LightComponent>(); tutorial_submarineSteering = Item.ItemList.Find(i => i.HasTag("command")).GetComponent <Steering>(); tutorial_submarineSteering.CanBeSelected = false; foreach (ItemComponent ic in tutorial_submarineSteering.Item.Components) { ic.CanBeSelected = false; } SetDoorAccess(null, tutorial_mechanicFinalDoorLight, false); // Room 2 officer_equipmentObjectiveSensor = Item.ItemList.Find(i => i.HasTag("officer_equipmentobjectivesensor")).GetComponent <MotionSensor>(); officer_equipmentCabinet = Item.ItemList.Find(i => i.HasTag("officer_equipmentcabinet")).GetComponent <ItemContainer>(); officer_firstDoor = Item.ItemList.Find(i => i.HasTag("officer_firstdoor")).GetComponent <Door>(); officer_firstDoorLight = Item.ItemList.Find(i => i.HasTag("officer_firstdoorlight")).GetComponent <LightComponent>(); SetDoorAccess(officer_firstDoor, officer_firstDoorLight, false); // Room 3 officer_crawlerSensor = Item.ItemList.Find(i => i.HasTag("officer_crawlerobjectivesensor")).GetComponent <MotionSensor>(); officer_crawlerSpawnPos = Item.ItemList.Find(i => i.HasTag("officer_crawlerspawn")).WorldPosition; officer_secondDoor = Item.ItemList.Find(i => i.HasTag("officer_seconddoor")).GetComponent <Door>(); officer_secondDoorLight = Item.ItemList.Find(i => i.HasTag("officer_seconddoorlight")).GetComponent <LightComponent>(); SetDoorAccess(officer_secondDoor, officer_secondDoorLight, false); // Room 4 officer_somethingBigSensor = Item.ItemList.Find(i => i.HasTag("officer_somethingbigobjectivesensor")).GetComponent <MotionSensor>(); officer_coilgunLoader = Item.ItemList.Find(i => i.HasTag("officer_coilgunloader")).GetComponent <ItemContainer>(); officer_superCapacitor = Item.ItemList.Find(i => i.HasTag("officer_supercapacitor")).GetComponent <PowerContainer>(); officer_coilgunPeriscope = Item.ItemList.Find(i => i.HasTag("officer_coilgunperiscope")); officer_hammerheadSpawnPos = Item.ItemList.Find(i => i.HasTag("officer_hammerheadspawn")).WorldPosition; officer_thirdDoor = Item.ItemList.Find(i => i.HasTag("officer_thirddoor")).GetComponent <Door>(); officer_thirdDoorLight = Item.ItemList.Find(i => i.HasTag("officer_thirddoorlight")).GetComponent <LightComponent>(); officer_ammoShelf_1 = Item.ItemList.Find(i => i.HasTag("officer_ammoshelf_1")).GetComponent <ItemContainer>(); officer_ammoShelf_2 = Item.ItemList.Find(i => i.HasTag("officer_ammoshelf_2")).GetComponent <ItemContainer>(); SetDoorAccess(officer_thirdDoor, officer_thirdDoorLight, false); // Room 5 officer_rangedWeaponSensor = Item.ItemList.Find(i => i.HasTag("officer_rangedweaponobjectivesensor")).GetComponent <MotionSensor>(); officer_rangedWeaponCabinet = Item.ItemList.Find(i => i.HasTag("officer_rangedweaponcabinet")).GetComponent <ItemContainer>(); officer_rangedWeaponHolder = Item.ItemList.Find(i => i.HasTag("officer_rangedweaponholder")).GetComponent <ItemContainer>(); officer_fourthDoor = Item.ItemList.Find(i => i.HasTag("officer_fourthdoor")).GetComponent <Door>(); officer_fourthDoorLight = Item.ItemList.Find(i => i.HasTag("officer_fourthdoorlight")).GetComponent <LightComponent>(); SetDoorAccess(officer_fourthDoor, officer_fourthDoorLight, false); // Room 6 officer_mudraptorObjectiveSensor = Item.ItemList.Find(i => i.HasTag("officer_mudraptorobjectivesensor")).GetComponent <MotionSensor>(); officer_mudraptorSpawnPos = Item.ItemList.Find(i => i.HasTag("officer_mudraptorspawn")).WorldPosition; tutorial_securityFinalDoor = Item.ItemList.Find(i => i.HasTag("tutorial_securityfinaldoor")).GetComponent <Door>(); tutorial_securityFinalDoorLight = Item.ItemList.Find(i => i.HasTag("tutorial_securityfinaldoorlight")).GetComponent <LightComponent>(); SetDoorAccess(tutorial_securityFinalDoor, tutorial_securityFinalDoorLight, false); // Submarine tutorial_submarineDoor = Item.ItemList.Find(i => i.HasTag("tutorial_submarinedoor")).GetComponent <Door>(); tutorial_submarineDoorLight = Item.ItemList.Find(i => i.HasTag("tutorial_submarinedoorlight")).GetComponent <LightComponent>(); tutorial_enteredSubmarineSensor = Item.ItemList.Find(i => i.HasTag("tutorial_enteredsubmarinesensor")).GetComponent <MotionSensor>(); officer_subAmmoBox_1 = Item.ItemList.Find(i => i.HasTag("officer_subammobox_1")); officer_subAmmoBox_2 = Item.ItemList.Find(i => i.HasTag("officer_subammobox_2")); officer_subLoader_1 = Item.ItemList.Find(i => i.HasTag("officer_subloader_1")).GetComponent <ItemContainer>(); officer_subLoader_2 = Item.ItemList.Find(i => i.HasTag("officer_subloader_2")).GetComponent <ItemContainer>(); officer_subSuperCapacitor_1 = Item.ItemList.Find(i => i.HasTag("officer_subsupercapacitor_1")).GetComponent <PowerContainer>(); officer_subSuperCapacitor_2 = Item.ItemList.Find(i => i.HasTag("officer_subsupercapacitor_2")).GetComponent <PowerContainer>(); officer_subAmmoShelf = Item.ItemList.Find(i => i.HasTag("officer_subammoshelf")).GetComponent <ItemContainer>(); SetDoorAccess(tutorial_submarineDoor, tutorial_submarineDoorLight, true); }
//Setup powers bar, called ONLY by power manager with a list of the powers in a level public void setUpPowersBar(Power[] powers) { if (_powersBar != null && powers.Length > 0) // the powers bar is already set up or there are no powers avaliable { return; } _powersBar = new List <PowerContainer>(); _powerBarMappings = new Dictionary <int, int>(); var xPos = (-Screen.width / 2 + powerButton.GetComponent <UISprite>().width / 2) * root.pixelSizeAdjustment; int halfSpacer = powers.Length / 2; var startYPos = 0; int posCounter = 1; foreach (var power in powers) { GameObject newButton = NGUITools.AddChild(this.gameObject, powerButton); UIToggle nbScript = newButton.GetComponent <UIToggle>(); UILabel nbLabel = newButton.GetComponentInChildren <UILabel>(); nbLabel.text = ((Power)power).price.ToString(); newButton.transform.localPosition = new Vector3(xPos, startYPos * root.pixelSizeAdjustment, 0); newButton.GetComponent <UISprite>().spriteName = power.name; newButton.transform.FindChild("Selected").GetComponent <UISprite>().spriteName = power.name + "_Over"; PowerContainer container = new PowerContainer(); container.powerSprite = newButton.GetComponent <UISprite>(); container.powerButton = nbScript; container.cost = nbLabel; container.power = power; nbScript.UserData = container; _powersBar.Add(container); if (posCounter <= halfSpacer) { _powerBarMappings.Add(posCounter - 1, halfSpacer - posCounter); } posCounter++; if (posCounter == halfSpacer + 1) { startYPos = 0; } if (posCounter > halfSpacer) { startYPos -= powerButton.GetComponent <UISprite> ().height; _powerBarMappings.Add(posCounter - 1, posCounter - 1); } else { startYPos += powerButton.GetComponent <UISprite> ().height; } if (power.powerState == PowerState.Disabled || power.powerState == PowerState.ForceDisabled) { container.powerButton.value = false; container.powerButton.enabled = false; container.powerSprite.color = new Color(container.powerSprite.color.r, container.powerSprite.color.g, container.powerSprite.color.b, 0.5f); container.cost.color = new Color(sBlue.r, sBlue.g, sBlue.b, 0.5f); } } }