public void MoveTo(int movement)
        {
            DirectionChecker checker = new DirectionChecker(_world);

            if (checker.CanPlayerMoveInDirection(Map.Map[NumberOfArrayPlayerIsIn + movement]))
            {
                Changed = true;
                OldNumberOfArrayPlayerIsIn = NumberOfArrayPlayerIsIn;
                NumberOfArrayPlayerIsIn   += movement;
                MonsterMoveController[] monsters;
                if (_world.Has <MonsterMoveController[]>())
                {
                    monsters = _world.Get <MonsterMoveController[]>();
                }
                else
                {
                    monsters = new MonsterMoveController[1];
                }

                if (monsters.Length > 1)
                {
                    foreach (var monster in monsters)
                    {
                        if (monster.MonsterPosition.NumberOfArrayMonsterIsIn == NumberOfArrayPlayerIsIn)
                        {
                            _world.LinesTypedInMessageBox++;
                            MoveMessages message = new MoveMessages(_world);
                            message.MonstersInRoomMessage(monster.MonsterStats.Name);
                        }
                    }
                }
            }
        }
示例#2
0
    void Start()
    {
        checkGround = GetComponent <GroundChecker>();
        colliderBox = GetComponent <BoxCollider2D>();
        anim        = GetComponent <Animator>();
        rb          = GetComponent <Rigidbody2D>();
        dirCheck    = GetComponent <DirectionChecker>();
        rollPusher  = GetComponent <ConstantForce2D>();

        startTime = Time.time;
        inRoll    = false;
    }
示例#3
0
    public bool MoveNewBrick(MoveDirection moveDir)
    {
        DirectionChecker directionChecker = Processors.GetComponent <DirectionChecker>();

        switch (moveDir)
        {
        case MoveDirection.Right:
            if (directionChecker.CheckRight(CurrentActiveBrick, BrickArray) > 0)
            {
                MoveBrick(CurrentActiveBrick, MoveDirection.Right, true);
            }
            break;

        case MoveDirection.Left:
            if (directionChecker.CheckLeft(CurrentActiveBrick, BrickArray) > 0)
            {
                MoveBrick(CurrentActiveBrick, MoveDirection.Left, true);
            }
            break;

        case MoveDirection.Up:
            if (directionChecker.CheckUp(CurrentActiveBrick, BrickArray) > 0)
            {
                MoveBrick(CurrentActiveBrick, MoveDirection.Up, true);
            }
            break;

        case MoveDirection.Down:
            if (directionChecker.CheckDown(CurrentActiveBrick, BrickArray) > 0)
            {
                MoveBrick(CurrentActiveBrick, MoveDirection.Down, true);
            }
            break;

        default:
            break;
        }

        int i = 0;

        while (AddNewPlayBrick() != true)
        {
            AddNewPlayBrick();
            i++;

            if (i >= 256)
            {
                break;
            }
        }
        return(true);
    }
示例#4
0
    // Start is called before the first frame update
    void Awake()
    {
        boxCollider      = GetComponent <BoxCollider>();
        directionChecker = GetComponent <DirectionChecker>();
        directionChecker.Init(EntranceType, ExitType);
        spawner        = FindObjectOfType <StageObjectSpawner>();
        spawnedObjects = new List <GameObject>();
        lanes          = new List <Lane>();
        foreach (var lane in GetComponentsInChildren <Lane>())
        {
            lanes.Add(lane);
        }
        ;

        Assert.IsNotNull(spawner, "Spawnerが取得できませんでした");
        Assert.IsNotNull(boxCollider, "BoxColliderがアタッチされていません");
    }
示例#5
0
 void Awake()
 {
     gameModel = FindObjectOfType<GameModel>();
     directionChecker = GameObject.Find("Processors").GetComponent<DirectionChecker>();
 }
示例#6
0
 void Awake()
 {
     gameModel        = FindObjectOfType <GameModel>();
     directionChecker = GameObject.Find("Processors").GetComponent <DirectionChecker>();
 }
示例#7
0
 // Use this for initialization
 void Start()
 {
     rb       = GetComponent <Rigidbody2D>();
     anim     = GetComponent <Animator>();
     dirCheck = GetComponent <DirectionChecker>();
 }