Inheritance: MonoBehaviour
        public static DoorScript CreateOpenableDoor(Vector3 position, bool right = false, float openAmount = 90)
        {
            GameObject door = GameObject.Instantiate(MFPClassicAssets.openableDoor);

            door.transform.position = position;

            DoorScript doorScript = door.AddComponent <DoorScript>();


            if (right)
            {
                doorScript.openAmountRight = openAmount;
                doorScript.openAmountLeft  = 0;
            }
            else
            {
                doorScript.openAmountLeft  = openAmount;
                doorScript.openAmountRight = 0;
            }

            doorScript.gameObject.transform.eulerAngles += new Vector3(0, 180, 0);


            return(door.GetComponent <DoorScript>());
        }
示例#2
0
    void Update()
    {
        RaycastHit hit;

        crosshair.color = Color.white;

        if (Physics.Raycast(transform.position, transform.forward, out hit, rayLenght))
        {
            if (hit.collider.CompareTag(interactableTag))
            {
                crosshair.color = Color.red;
                if (Input.GetKeyDown(KeyCode.E))
                {
                    if (door = hit.collider.gameObject.GetComponent <DoorScript>())
                    {
                        door.PlayAnimation();
                    }
                    if (coll = hit.collider.gameObject.GetComponent <CollectibleScript>())
                    {
                        Animator anim = pickTxt.gameObject.GetComponent <Animator>();
                        anim.Play("FadeIn");
                        coll.CollectItem(hit);
                        CalculateScore();
                    }
                }
            }
        }
    }
示例#3
0
 void OnTriggerEnter(Collider other)
 {
     Debug.Log("TRIGGER TIME CHANGE");
     if (other.gameObject.tag == "TimeToggle")
     {
         if (TimeManager.instance.slowMotion == true)
         {
             TimeManager.instance.slowMotion = false;
             source.pitch = 1;
             source.PlayOneShot(slowToNormal);
             foreach (TorchSoundScript t in FindObjectsOfType <TorchSoundScript>())
             {
                 t.NormalMotion();
             }
             SmokeScript.Normal();
             DoorScript.Normal();
         }
         else
         {
             TimeManager.instance.slowMotion = true;
             source.pitch = 3;
             source.PlayOneShot(normalToSlow);
             foreach (TorchSoundScript t in FindObjectsOfType <TorchSoundScript>())
             {
                 t.SlowMotion();
             }
             SmokeScript.SlowMotion();
             DoorScript.SlowMotion();
         }
     }
 }
示例#4
0
	//public Vector2 textAdjusts = new Vector2(157, 30);

	// Use this for initialization
	void Start(){

		if (font != null)
			font = Resources.Load ("Fonts/KoushikiSans") as Font;

		if (ClickRevealer == null)
			ClickRevealer = Resources.Load ("Textures/IndicatorRing") as Texture2D;

		if (scale.x == 0f) {
			scale.x = transform.localScale.x;
			scale.y = transform.localScale.y;
		}

		if (player == null)
			player = FindObjectOfType (typeof(playerScript)) as playerScript;

		doorscript = GetComponent<DoorScript>();

		//iconMod.x *= transform.localScale.x;
		//iconMod.x *= transform.localScale.y;

		guiStyleFore = new GUIStyle();
		guiStyleFore.normal.textColor = Color.white;  
		guiStyleFore.alignment = TextAnchor.UpperCenter ;
		guiStyleFore.wordWrap = true;
		guiStyleFore.fontSize = sizeOfFont;
		guiStyleFore.font = font;
		guiStyleBack = new GUIStyle();
		guiStyleBack.normal.textColor = Color.black;  
		guiStyleBack.alignment = TextAnchor.UpperCenter ;
		guiStyleBack.wordWrap = true;
		guiStyleBack.font = font;
		guiStyleBack.fontSize = sizeOfFont;
	}
示例#5
0
    private void OnTriggerEnter2D(Collider2D collision)
    {
        if (collision.GetComponent <Pickup>())
        {
            print("Picked up a " + collision.name);
            GameManager.TheGameManager.Score += collision.GetComponent <Pickup>().ScorePts;
            collision.gameObject.SetActive(false);
        }
        else if (collision.GetComponent <DoorScript>())
        {
            CurrentDoor = collision.GetComponent <DoorScript>();

            if (CurrentDoor.IsOpen)
            {
                CurrentDoor.CloseDoor();
            }
        }
        else if (collision.CompareTag("Monster"))
        {
            if (Floor == collision.GetComponent <EnemyInfo>().Floor || collision.GetComponent <EnemyInfo>().Floor == 10)
            {
                Die();
            }
        }
    }
示例#6
0
 void MakeInstance()
 {
     if (instance == null)
     {
         instance = this;
     }
 }
示例#7
0
    void Update()
    {
        if (Input.GetKey(KeyCode.E))
        {
            Ray        ray = new Ray(transform.position, transform.forward);
            RaycastHit hit;
            if (Physics.Raycast(ray, out hit, interactDistance))
            {
                if (hit.collider.CompareTag("Door"))
                {
                    DoorScript doorScript = hit.collider.transform.parent.GetComponent <DoorScript>();
                    if (doorScript == null)
                    {
                        return;
                    }

                    if (Inventory.keys[doorScript.index] == true)
                    {
                        doorScript.ChangeDoorState();
                    }
                }
                else if (hit.collider.CompareTag("Key"))
                {
                    Inventory.keys[hit.collider.GetComponent <Key>().index] = true;
                    Destroy(hit.collider.gameObject);
                }
            }
        }
    }
 void OnCollisionEnter2D(Collision2D col)
 {
     if (playerInCar == true && rb.velocity.magnitude > 1)
     {
         //Debug.Log ("CAR COLLIDED WITH " + col.gameObject.name);
         if (col.gameObject.GetComponent <NPCController> () == true)
         {
             NPCController npc = col.gameObject.GetComponent <NPCController> ();
             npc.knockOutNPC();
             //Debug.Log ("Dealt " + Mathf.RoundToInt (100 * rb.velocity.magnitude).ToString () + " Damage to NPC");
             npc.myHealth.dealDamage(Mathf.RoundToInt(100 * rb.velocity.magnitude), true);
         }
         else if (col.gameObject.GetComponent <DoorScript> () == true)
         {
             DoorScript ds = col.gameObject.GetComponent <DoorScript> ();
             ds.largeImpactOnDoor(100);
         }
         else if (col.gameObject.transform.parent != null && col.gameObject.transform.parent.GetComponent <WindowNew> () == true)
         {
             WindowNew wn = col.gameObject.transform.parent.GetComponent <WindowNew> ();
             wn.destroyWindow();
         }
         dealDamage(100);
     }
 }
示例#9
0
 public void disableGUI()
 {
     doorToOpen = null;
     PlayerAction.currentAction = null;
     displayString = "";
     guiObject.SetActive(false);
 }
    public override bool canDo()
    {
        if (myDoor == null)
        {
            myDoor = this.GetComponent <DoorScript> ();
        }



        if (myDoor.locked == false)
        {
            //Destroy (this);
            return(false);
        }
        if (Vector3.Distance(this.transform.position, CommonObjectsStore.player.transform.position) < 2.5f && myDoor.locked == true)
        {
            return(true);
        }
        else
        {
            PlayerAction.currentAction = null;
            Keypad.me.disableGUI();
            return(false);
        }
    }
    public override bool canDo()
    {
        illigal = false;

        if (myDoor == null)
        {
            myDoor = this.GetComponent <DoorScript> ();
        }

        if (myDoor.locked == false)
        {
            if (Vector3.Distance(this.transform.position, CommonObjectsStore.player.transform.position) < 2)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
        else
        {
            return(false);
        }
    }
 public override bool canDo()
 {
     if (myDoor == null)
     {
         myDoor = this.GetComponent <DoorScript> ();
     }
     if (myDoor.locked == false)
     {
         //Destroy (this);
         return(false);
     }
     if (explosivePlaced == false)
     {
         //////////Debug.Log ("Does player have explosives = " + Inventory.playerInventory.doWeHaveItem ("Explosive"));
         if (Vector3.Distance(this.transform.position, CommonObjectsStore.player.transform.position) < 2 && Inventory.playerInventory.doWeHaveItem("Explosive") == true)
         {
             return(true);
         }
         else
         {
             return(false);
         }
     }
     else
     {
         return(false);
     }
 }
 public static void ResetGame()
 {
     ResetTimer();
     ResetRigidBodies();
     Player.Respawn();
     DoorScript.ResetAllDoors();
 }
    void GetKey()
    {
        DoorScript doorScript = Door.GetComponent <DoorScript> ();

        doorScript.keySystem.isUnlock = true;
        Destroy(gameObject);
    }
示例#15
0
 // Use this for initialization
 void Start()
 {
     ds = door.GetComponent<DoorScript>();
     es = boss.GetComponent<EnemyScript>();
     ehs = boss.GetComponent<EnemyHealthScript>();
     ps = VariableScript.scrPlayerScript1;
     speed = es.MoveSpeed;
 }
示例#16
0
 public void CloseAllUnfinished()
 {
     foreach (Transform door in unfinishedDoors)
     {
         DoorScript ds = door.GetComponent <DoorScript>();
         ds.ClosePermanent();
     }
 }
示例#17
0
 // Area8
 public void OpenFinalRoom(DoorScript finalDoor1)
 {
     // Open other door (if closed)
     if (finalDoor1.open == false)
     {
         finalDoor1.ToggleDoor();
     }
 }
示例#18
0
    void LockBreaking()
    {
        DoorScript doorScript = Door.GetComponent <DoorScript> ();

        doorScript.keySystem.enabled = false;
        doorScript.OpenText();
        LockBreak.Play("Lock_breaking");
        FX.SetActive(true);
    }
    private void Start()
    {
        //We go fetch our components
        doorScript  = GameObject.Find("Door").GetComponent <DoorScript>();
        doorScript1 = GameObject.Find("Door1").GetComponent <DoorScript>();

        //We set the Trigger to false, as nothing has happened yet
        hasTriggered = false;
    }
示例#20
0
    public Door(GameObject s)
    {
        D = s;
        DoorScript sk = s.GetComponent <DoorScript> ();

        TargetArea  = sk.TargetArea;
        TargetPoint = sk.TargetDoor.transform.GetChild(0).position;
        ClosePoint  = s.transform.GetChild(0).position;
    }
示例#21
0
 private void Awake()
 {
     spawnPoint  = GameObject.Find("SpawnPoint");
     sofaPoint   = GameObject.Find("SofaPoint");
     sitPosition = GameObject.Find("SitPosition");
     door        = FindObjectOfType <DoorScript>();
     agent       = GetComponent <NavMeshAgent>();
     animator    = GetComponent <Animator>();
 }
    void OnTriggerEnter2D(Collider2D coll)
    {
        DoorScript ds = coll.gameObject.GetComponent <DoorScript>();

        if (ds == null || !ds.NextRoom())
        {
            currBlock = coll.gameObject;
        }
    }
示例#23
0
 // Start is called before the first frame update
 void Awake()
 {
     if (Instance == null)
     {
         Instance = this;
     }
     anim = GetComponent <Animator>();
     box  = GetComponent <BoxCollider2D>();
 }
示例#24
0
 void OnTriggerEnter(Collider other) //LINKED TO DOOR SCRIPTs
 {
     if (other.gameObject.tag == "Player")
     {
         door            = GameObject.Find("castledoors").GetComponent <DoorScript>();
         door.isUnlocked = true;
         gameObject.SetActive(false);
         soundManager.playSound(SoundManager.Sound.Key);
     }
 }
    private void OnTriggerEnter2D(Collider2D other)
    {
        if (other.gameObject.tag == "Bullet" && !isJumping && !isInvinsible)
        {
            health--;
            isInvinsible = true;
        }
        else if (other.gameObject.tag == "Jam" && !isJumping)
        {
            Heal(0.3);
        }
        else if (other.gameObject.tag == "Door")
        {
            DoorScript doorScript = other.transform.parent.gameObject.GetComponent <DoorScript>();
            bool       hasKey     = false;
            if (doorScript != null)
            {
                for (int i = 0; i < foundKeys.Count; i++)
                {
                    KeyScript keyScript = foundKeys[i].GetComponent <KeyScript>();
                    if (doorScript.keyColorToOpen == keyScript.color)
                    {
                        hasKey = true;
                        Destroy(keyScript.gameObject);
                    }
                }

                if (hasKey)
                {
                    doorScript.Open();
                }
                else
                {
                    isStuck = true;
                }
            }
        }

        if (health == 3)
        {
            playerSprite.GetComponent <SpriteRenderer>().sprite = Damage3;
        }
        if (health == 2)
        {
            playerSprite.GetComponent <SpriteRenderer>().sprite = Damage2;
        }
        if (health == 1)
        {
            playerSprite.GetComponent <SpriteRenderer>().sprite = Damage1;
        }
        if (health == 0)
        {
            SceneManager.LoadScene(4, LoadSceneMode.Single);
        }
    }
示例#26
0
    void Start()
    {
        gates        = gameObject.GetComponent <Gates> ();
        door         = gameObject.GetComponent <DoorScript> ();
        door.enabled = false;
        animator     = gameObject.GetComponent <Animator> ();
        dialogue     = GameObject.Find("Dialogue").GetComponent <Text> ();
        Renderer renderer = GetComponentInChildren <Renderer>();

        renderer.material.shader = Shader.Find("Toon/Lit Outline");
    }
示例#27
0
 private void OnTriggerExit2D(Collider2D collision)
 {
     if (collision.GetComponent <DoorScript>())
     {
         CurrentDoor = null;
     }
     else if (collision.GetComponent <NavigatorScript>())
     {
         CurrentNavigator = null;
     }
 }
示例#28
0
 void OnTriggerExit(Collider collider)
 {
     if (collider.tag == "DoorTrigger")
     {
         DoorScript door = FindDoor(collider.gameObject);
         if (door != null)
         {
             door.Close();
         }
     }
 }
示例#29
0
 private void Awake()
 {
     if (instance == null)
     {
         instance = this;
     }
     else if (instance != this)
     {
         Destroy(gameObject);
     }
 }
示例#30
0
	void Start ()
	{
		gates = gameObject.GetComponent<Gates> ();
		door = gameObject.GetComponent<DoorScript> ();
		door.enabled = false;
		animator = gameObject.GetComponent<Animator> ();
		dialogue = GameObject.Find("Dialogue").GetComponent<Text> ();
		Renderer renderer = GetComponentInChildren<Renderer>();
		renderer.material.shader = Shader.Find ("Toon/Lit Outline");

	}
示例#31
0
 private void OnTriggerExit2D(Collider2D collision)
 {
     if (activated != null)
     {
         if (collision.gameObject == activated.gameObject)
         {
             activated.ToggleTooltip();
             activated = null;
         }
     }
 }
示例#32
0
 private void OnTriggerEnter2D(Collider2D collision)
 {
     if (collision.gameObject.tag == "Activated")
     {
         if (activated != null)
         {
             activated.ToggleTooltip();
         }
         activated = collision.gameObject.GetComponent <DoorScript>();
         activated.ToggleTooltip();
     }
 }
示例#33
0
    void Start()
    {
        ds = transform.parent.GetComponent<DoorScript> ();
        openCheck = ds.open;

        if ((ds.openAngle > ds.closedAngle) != openCheck) {
            foreach (BoxCollider c in GetComponents<BoxCollider>())
            {
                c.enabled = !c.enabled;
            }
        }
    }
示例#34
0
    void DoorCheck()
    {
        int counter = 0;

        foreach (GameObject door in doorList)
        {
            if (player.transform.position.x > door.transform.position.x - distance &&
                player.transform.position.x < door.transform.position.x + distance &&
                player.transform.position.z > door.transform.position.z - distance &&
                player.transform.position.z < door.transform.position.z + distance)
            {
                doorNear = true;

                //set closest
                if (closest == null)
                {
                    closest = door;
                }
                else if (closest != null || closest != door)
                {
                    //if this item is closer
                    if (Vector3.Distance(player.transform.position, door.transform.position) < Vector3.Distance(player.transform.position, closest.transform.position))
                    {
                        closest = door;
                    }
                }
            }
            else
            {
                counter++;
            }
        }

        //if the player is near an item, let them pick it up
        if (doorNear)
        {
            if (Input.GetKeyDown(KeyCode.E))
            {
                //add code for door being in open or closed state
                DoorScript doorScript = closest.GetComponent <DoorScript>();
                //change boolean state from open to closed or vice versa
                if (doorScript.open)
                {
                    doorScript.open = false;
                }
                else if (!doorScript.open)
                {
                    doorScript.open = true;
                }
            }
        }
    }
示例#35
0
    // Use this for initialization
    void Start()
    {
        started = false;

        if (target == null)
            originalTexture = this.renderer.material.mainTexture;
        else
            originalTexture = target.renderer.material.mainTexture;

        if (door1){
            ds1 = door1.GetComponent<DoorScript>();
            originalDoor1Texture = door1.renderer.material.mainTexture;
        }

        if (door2){
            ds2 = door2.GetComponent<DoorScript>();
            originalDoor2Texture = door2.renderer.material.mainTexture;
        }

        if (door3){
            ds3 = door3.GetComponent<DoorScript>();
            originalDoor3Texture = door3.renderer.material.mainTexture;
        }

        if (door4){
            ds4 = door4.GetComponent<DoorScript>();
            originalDoor4Texture = door4.renderer.material.mainTexture;
        }
    }
示例#36
0
 // Use this for initialization
 void Start()
 {
     ds = door.GetComponent<DoorScript>();
 }
 // Use this for initialization
 void Start()
 {
     player = GameObject.Find ("Player").transform;
     door = GameObject.Find ("DoorGrassExit").GetComponent<DoorScript> ();
 }
示例#38
0
    public void OnTriggerEnter(Collider other)
    {
        CollectibleScript collectibleScript = other.GetComponent<CollectibleScript>();

        if(collectibleScript != null)
        {
            collectibleScript.Pickup();
        }

        DoorScript doorScript = other.transform.parent.GetComponent<DoorScript>();

        if (doorScript!= null)
        {
            m_nearbyDoor = doorScript;
            doorScript.Open();
        }

        m_nearbySwitch = other.transform.parent.GetComponent<Switch>() as Switch;

        if(other.name.Contains("Killzone"))
        {
            GameStateManager.Instance.Reset();
        }
    }
示例#39
0
    public void OnTriggerExit(Collider other)
    {
        DoorScript doorScript = other.transform.parent.GetComponent<DoorScript>();

        if (doorScript != null)
        {
            doorScript.Close();
            m_nearbyDoor = null;
        }

		if (m_nearbySwitch == other.transform.parent.GetComponent<Switch>()) {
			m_nearbySwitch = null;
		}
    }