/Scripts/Item.js
http://acid-and-base.googlecode.com/ · JavaScript · 104 lines · 83 code · 11 blank · 10 comment · 32 complexity · 7b21b6a20efaecc86bba7bdf9f1bce06 MD5 · raw file
- enum itemEnum { Pseudo=0, saltShaker=1 }
- var itemType = itemEnum.Pseudo;
- private var pickedUp = false;
- var pickedUpBy = -1;
- // 0 = Red // 1 = Acid // 2 = Base
- private var itemEnter = false;
- private var holding = false;
- var showText = false;
- var itemName = "";
- var displayText = true;
- function Start ()
- {
- if (collider == null)
- gameObject.AddComponent(MeshCollider);
- collider.isTrigger = true;
- }
- function Update()
- {
- // this will pick up the item.
- if (Input.GetKeyDown(KeyCode.E) && itemEnter && !pickedUp)
- {
- holding = gameObject.Find("Big Red").GetComponent(ItemInventory).holdingItem;
- pickedUpBy = gameObject.Find("Master Controller Light").GetComponent(MasterController_edit).activePlayer;
- if (pickedUpBy == 0 && !pickedUp && !holding)
- {
- // set up pickup condition as true.
- pickedUp = true;
- gameObject.Find("Big Red").GetComponent(ItemInventory).holdingItem = true;
- }
- }
- else if (pickedUp)
- {
- // this will drop the item.
- if (Input.GetKeyDown(KeyCode.E))
- {
- pickedUp = false;
- gameObject.Find("Big Red").GetComponent(ItemInventory).holdingItem = false;
- //transform.position.y -= 1; // TEMPORARY CODE
- }
-
- if (pickedUpBy == 0)
- {
- // if it is picked up, make the item float above Red
- transform.position = gameObject.Find("Big Red").GetComponent(Transform).position;
- transform.position.y += 1; // item location (Y)
- //transform.position.z += 0.5;
- }
- else if (pickedUpBy == 1)
- {
- // nothing, acid cannot pick up items
- }
- else if (pickedUpBy == 2)
- {
- // nothing, base cannot pick up items
- }
- }
- }
- function Reset ()
- {
- if (collider == null)
- gameObject.AddComponent(MeshCollider);
- collider.isTrigger = true;
- }
- // when something collides with this object...
- function OnTriggerEnter(col : Collider)
- {
- var cmtr: CharacterMotor = col.GetComponent(CharacterMotor);
- var properties : Properties = col.GetComponent(Properties);
- if(cmtr == null)
- return;
- showText = true;
- if(properties != null)
- return;
- itemEnter = true;
- }
- function OnTriggerExit(col : Collider)
- {
- var cmtr: CharacterMotor = col.GetComponent(CharacterMotor);
- var properties : Properties = col.GetComponent(Properties);
- if(cmtr == null)
- return;
- showText = false;
- if(properties != null)
- return;
- itemEnter = false;
- }
- function OnGUI()
- {
- if (showText && displayText)
- {
- GUI.Box(Rect((Screen.width/2) - 100,50,200,40),""+itemName);
- }
- }
- @script AddComponentMenu("Third Person Props/Item")