public virtual void Reset() { ResetSkills(); m_AnimationDelta = UnityEngine.Vector3Int.zero; m_AnimationDirection = Directions.North; m_AnimationEnd = 0; m_AnimationSpeed = UnityEngine.Vector3Int.zero; m_Brightness = 0; m_Direction = Directions.North; m_ID = 0; m_Trapper = false; m_Unpassable = false; m_KnownSince = -1; m_LightColor = UnityEngine.Color.black; m_MovementEnd = 0; m_MovementRunning = false; Name = null; m_PartyFlag = PartyFlags.None; m_PKFlag = PKFlags.Revenge; m_Type = CreatureTypes.Monster; m_Visible = false; m_GuildFlag = GuildFlags.None; m_Marks.Clear(); m_MountOutfit = null; m_Outfit = null; m_Position = UnityEngine.Vector3Int.zero; }
public void SetPKFlag(PKFlags pkFlag) { if (pkFlag < PKFlags.First || pkFlag > PKFlags.First) { throw new System.ArgumentException("Creature.SetPKFlag: Invalid flag."); } PKFlag = pkFlag; }
private void InternalUpdatePKFlag(PKFlags pkFlag) { if (pkFlag == 0) { if (m_PKFlag != 0) { m_PKFlagImage.gameObject.SetActive(false); } m_PKFlag = 0; return; } m_PKFlagImage.sprite = OpenTibiaUnity.GameManager.PKSprites[(int)pkFlag - 1]; if (m_PKFlag == 0) { m_PKFlagImage.gameObject.SetActive(true); } m_PKFlag = pkFlag; m_InternallyChanged = true; }
public void SetFlags(bool drawFlags, PartyFlags partyFlag, PKFlags pkFlag, SummonTypeFlags typeFlag, SpeechCategories speechFlag, GuildFlags guildFlag) { if (!drawFlags) { if (m_DrawFlags) { m_FlagsContainer.gameObject.SetActive(false); m_DrawFlags = false; } return; } if (m_PartyFlag != partyFlag) { InternalUpdatePartyFlag(partyFlag); } if (m_PKFlag != pkFlag) { InternalUpdatePKFlag(pkFlag); } if (m_TypeFlag != typeFlag) { InternalUpdateTypeFlag(typeFlag); } if (m_SpeechFlag != speechFlag) { InternalUpdateSpeechFlag(speechFlag); } if (m_GuildFlag != guildFlag) { InternalUpdateGuildFlag(guildFlag); } if (!m_InternallyChanged) { return; } m_InternallyChanged = false; if (m_PartyFlag != 0 || m_PKFlag != 0 || m_TypeFlag != 0 || m_SpeechFlag != 0 || m_GuildFlag != 0) { bool partyOrPK = m_PartyFlag != 0 || m_PKFlag != 0; bool partyAndPK = m_PartyFlag != 0 && m_PKFlag != 0; if (m_PartyPKFlagsContainer.gameObject.activeSelf != partyOrPK) { m_PartyPKFlagsContainer.gameObject.SetActive(partyOrPK); } if (partyAndPK) { m_PartyPKFlagsContainer.padding.right = -13; } else if (partyOrPK) { m_PartyPKFlagsContainer.padding.right = 0; } if (!m_DrawFlags) { m_FlagsContainer.gameObject.SetActive(true); m_DrawFlags = true; } } else if (m_DrawFlags) // draw flags is set but there were nothing to draw { m_FlagsContainer.gameObject.SetActive(false); m_DrawFlags = false; } }