public void CustomUpdate() { foreach (int door in DoorGroup) { DoorCloseAutomaticallyCmp doorComponent = EntityBase.GetEntity(door).GetComponent <DoorCloseAutomaticallyCmp>(); DoorAnimCmp doorAnim = EntityBase.GetEntity(door).GetComponent <DoorAnimCmp>(); foreach (int player in PlayerGroup) { Vector3 door_pos = doorComponent.transform.position; Vector3 player_pos = EntityBase.GetEntity(player).transform.position; if (!InZone(doorComponent, player_pos) && doorAnim.is_open) { if (!Storage.ContainsComponent <StairDoorDownCmp>(door)) { EntityBase.GetEntity(door).GetComponent <DoorAnimCmp>().anim.Play("DoorCloseAnim"); } else { EntityBase.GetEntity(door).GetComponent <DoorAnimCmp>().anim.Play("DoorCloseReverseAnim"); } } } } }
void StartOpenDoor(int button_sender) { int door = Storage.GetComponent <ButtonAnimCmp>(button_sender).doorHolder.GetComponent <EntityBase>().entity; if (Storage.GetComponent <OutDatedCmp>(door) == null) { DoorAnimCmp doorAnimCmp = Storage.GetComponent <DoorAnimCmp>(door); doorAnimCmp.anim.Play("DoorOpenReverseAnim"); } }