Пример #1
0
        private void EndWeaponSelection()
        {
            List <WSUnitDescriptor> myUnits = new List <WSUnitDescriptor>();

            foreach (int player in playerDirectory.Keys)
            {
                if (playerDirectory[player] == PlayerType.Local)
                {
                    foreach (WSUnitManager unit in _units[player])
                    {
                        myUnits.Add(new WSUnitDescriptor(unit.VisiblePosition, unit.UnitType, unit.WeaponType, player));
                    }
                }
                if (playerDirectory[player] == PlayerType.AI)
                {
                    List <Vector2> unitPositions = new List <Vector2>();
                    foreach (WSUnitManager unit in _units[player])
                    {
                        unitPositions.Add(unit.VisiblePosition);
                    }
                    myUnits = myUnits.Concat(DefaultAI.DefaultUnitPicker(unitPositions, player)).ToList();
                }
            }
            Vaults.wsUnitList = Vaults.wsUnitList.Concat(myUnits).ToList();

            if (matchController != null)
            {
                NetSendUnits(myUnits);
                return;
            }

            UnityEngine.SceneManagement.SceneManager.LoadScene("Skirmish");
        }
Пример #2
0
    // used to have a character move
    private void characterMoving()
    {
        DefaultAI aiCharacter = currentActor.GetComponent <DefaultAI> ();

        // checks if it is an npc otherwise it's the player
        if (aiCharacter != null)
        {
            if (!inMovement)
            {
                aiCharacter.NpcMovement.TargetPoint   = newLocation;
                aiCharacter.NpcMovement.CurrentAction = "pursue";
                aiCharacter.InCutscene = true;
            }
        }
        else
        {
            int newWalkingDirection;
            playerMovement.InCutscene = true;

            if (currentActor.transform.position.x != newLocation.x)
            {
                newWalkingDirection = currentActor.transform.position.x < newLocation.x ? 2 : 0;
            }
            else
            {
                newWalkingDirection = currentActor.transform.position.y < newLocation.y ? 1 : 3;
            }

            playerMovement.CharacterAnimator.walk(newWalkingDirection);
            currentActor.transform.position = Vector2.MoveTowards(currentActor.transform.position, newLocation, .02f);
        }

        if (Vector2.Distance(currentActor.transform.position, newLocation) < .02)
        {
            inMovement = false;

            if (aiCharacter != null)
            {
                aiCharacter.InCutscene = false;
            }
        }
    }