public void SetCharacterSprite(CharacterSpriteType type) { //don't know how good of an idea it is to cast enum to int, might be confusing if ((int)type >= currentConverstaion.dialogueCharacter.characterSprites.Length) { characterImage.sprite = currentConverstaion.dialogueCharacter.characterSprites[0]; Debug.LogWarning("falling back onto default sprite"); } else { characterImage.sprite = currentConverstaion.dialogueCharacter.characterSprites[(int)type]; } }
private void ModifyIndex(int indexDelta, CharacterSpriteType spriteType) { if (indexDelta == 0) { return; } var index = spriteType == CharacterSpriteType.Head ? _headIndex : _bodyIndex; var spriteListMax = spriteType == CharacterSpriteType.Head ? _availableSprites.HeadSprites.Count - 1 : _availableSprites.BodySprites.Count - 1; if (indexDelta > 0) { // Increment and prevent index from falling out of bounds index = index >= spriteListMax ? 0 : index + 1; } else { // Decrement and prevent index from falling out of bounds index = index == 0 ? spriteListMax : index - 1; } switch (spriteType) { case CharacterSpriteType.Head: _headIndex = index; if (!_visitedHeads.Contains(_headIndex + 1)) { _visitedHeads.Add(_headIndex + 1); } break; case CharacterSpriteType.Body: _bodyIndex = index; if (!_visitedBodies.Contains(_bodyIndex + 1)) { _visitedBodies.Add(_bodyIndex + 1); } break; } }
public static Sprite GetNightEventSprite(SpriteType spriteType, int spriteId, CharacterSpriteType charSpriteType = 0) { switch (spriteType) { case SpriteType.Characters: switch (charSpriteType) { case CharacterSpriteType.ComMale: return(CharactersOptions.Instance.GetCommonSprite(Sex.Male, spriteId)); case CharacterSpriteType.ComFemale: return(CharactersOptions.Instance.GetCommonSprite(Sex.Female, spriteId)); case CharacterSpriteType.Special: return(CharactersOptions.Instance.GetSpecialSprite(spriteId)); default: return(null); } case SpriteType.Items: return(ItemsOptions.Instance.itemsSprites[spriteId]); case SpriteType.Robberies: return(RobberiesOptions.Instance.RobberySprites[spriteId]); case SpriteType.People: return(m_instance.m_peopleSprites[spriteId]); case SpriteType.Places: return(m_instance.m_placesSprites[spriteId]); default: return(null); } }