Esempio n. 1
0
        public void RecordAction(ActionType type, CharacterBehavior character, CharacterBehavior target)
        {
            if (!doRecordInteractions(activePlayerIndex))
            {
                Logger.Instance.Log("LOG", "Skip RecordAction " + type); return;
            }

            Debug.Assert(gManager.progression.IsCharacterSelected());
            Debug.Assert(character == gManager.progression.GetSelectedCharacter());
            SynchronizeSelect();

            gameData.RecordAction(type, activePlayerIndex,
                                  character.getOwnerIndex(), character.getTokenName(),
                                  target.getOwnerIndex(), target.getTokenName());
        }
Esempio n. 2
0
        private void Synchronize(bool select, bool move)
        {
            // TODO: check if bga state differs from app state for selection matter (maybe unnecessary if load is properly done)
            if (select)
            {
                Debug.Assert(gManager.progression.IsCharacterSelected());
                CharacterBehavior character = gManager.progression.GetSelectedCharacter();

                if (isSelected && movingCharacter != character)
                {
                    // deselect previously selected character to select a new
                    gameData.RecordCancelMove(activePlayerIndex);
                }

                if (!isSelected)
                {
                    // select character
                    gameData.RecordStartMove(activePlayerIndex, character.getOwnerIndex(), character.getTokenName());
                }

                if (move)
                {
                    // synchronize selected character carried token
                    SynchronizeCarriedToken();
                }
            }
            else
            {
                Debug.Assert(!move);
                if (isSelected)
                {
                    // deselect previously selected character
                    gameData.RecordCancelMove(activePlayerIndex);
                }
            }
        }
Esempio n. 3
0
    private void characterSelectionDisplay()
    {
        if (associatedCharacter.selected)
        {
            StartSelectAnimation();
        }
        else
        {
            StartUnselectAnimation();
        }

        Transform tokenInfo = gManager.exchangeUI.transform.Find("Token Info");

        tokenInfo.Find("Sprite").GetComponent <Image>().sprite = fullCharacterSprite;
        tokenInfo.Find("Movement").GetComponent <Text>().text  = associatedCharacter.MOVE_VALUE.ToString();
        tokenInfo.Find("Combat").GetComponent <Text>().text    = associatedCharacter.COMBAT_VALUE.ToString();
        string   encodedString = gManager.app.data.rulesFile.text;
        JSONNode jsonData      = JSONNode.Parse(encodedString);

        tokenInfo.Find("Name").GetComponent <Text>().text = ((string)jsonData["BaseGame"][associatedCharacter.getTokenName()]["Name"][gManager.app.gameLanguage.ToString()]).ToUpper();
    }