Exemplo n.º 1
0
    // Changes the door state of this display according to the stored door object.
    public void ChangeDoorState()
    {
        if (door == null)
        {
            SpriteRenderersEnable(false);
            doorClosedCollider.enabled = true;
            return;
        }
        Door.DoorState state = door.state;
        switch (state)
        {
        case Door.DoorState.open:
            doorClosedCollider.enabled = false;
            SetDoorSprite(openDoor);
            break;

        case Door.DoorState.closed:
            doorClosedCollider.enabled = true;
            SetDoorSprite(closedDoor);
            break;

        case Door.DoorState.locked:
            if (door.color == Door.LockedDoorColor.none)
            {
                throw new System.ArgumentException("If door state is locked, color can not be null", "lockedDoorColor");
            }
            doorClosedCollider.enabled = true;
            SetDoorSprite(lockedDoorSprites[door.color]);
            break;
        }
    }
Exemplo n.º 2
0
 private void UpdateState()
 {
     Door.DoorState doorState = this.m_DoorState;
     if (doorState != Door.DoorState.Opening)
     {
         if (doorState == Door.DoorState.Closing)
         {
             base.transform.RotateAround((!this.m_Hinge) ? base.transform.position : this.m_Hinge.transform.position, Vector3.up, -90f);
             this.SetState(Door.DoorState.Closed);
         }
     }
     else
     {
         base.transform.RotateAround((!this.m_Hinge) ? base.transform.position : this.m_Hinge.transform.position, Vector3.up, 90f);
         this.SetState(Door.DoorState.Open);
     }
 }
Exemplo n.º 3
0
 public override void GetActions(List <TriggerAction.TYPE> actions)
 {
     if (HeavyObjectController.Get().IsActive())
     {
         return;
     }
     Door.DoorState doorState = this.m_DoorState;
     if (doorState == Door.DoorState.Closed)
     {
         actions.Add(TriggerAction.TYPE.Open);
         return;
     }
     if (doorState != Door.DoorState.Open)
     {
         return;
     }
     actions.Add(TriggerAction.TYPE.Close);
 }
Exemplo n.º 4
0
 private void SetState(Door.DoorState state)
 {
     this.m_DoorState = state;
 }