public void SetSpeechCategory(SpeechCategories category) { if (category < SpeechCategories.None || category > SpeechCategories.Travel) { throw new System.Exception("Creature.SetSpeechCategory: Invalid category."); } }
private void InternalUpdateSpeechFlag(SpeechCategories speechFlag) { if (speechFlag == 0) { if (m_SpeechFlag != 0) { m_SpeechFlagImage.gameObject.SetActive(false); } m_SpeechFlag = 0; return; } m_SpeechFlagImage.sprite = OpenTibiaUnity.GameManager.SpeechSprites[(int)speechFlag - 1]; if (m_SpeechFlag == 0) { m_SpeechFlagImage.gameObject.SetActive(true); } m_SpeechFlag = speechFlag; 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; } }