Exemple #1
0
 protected override void Start()
 {
     base.Start();
     targetPosition = gameObject.transform.position;
     collider       = gameObject.GetComponent <Collider2D>();
     //Maybe read this from some property from the character or the mob or whatever
     speed  = Meta.World.Movement.SPEED;
     facing = Facing.up;
     active = true;
 }
Exemple #2
0
    void Rotate()
    {
        if (collided)
        {
            return;
        }

        if (targetPosition.x > transform.position.x) //man bewegt sich nach rechts
        {
            if (facing != Facing.right)
            {
                facing = Facing.right;
                transform.SetPositionAndRotation(transform.position,
                                                 Quaternion.Euler(0, 0, -90));
            }
        }
        if (targetPosition.x < transform.position.x) //man bewegt sich nach links
        {
            if (facing != Facing.left)
            {
                facing = Facing.left;
                transform.SetPositionAndRotation(transform.position,
                                                 Quaternion.Euler(0, 0, 90));
            }
        }
        if (targetPosition.y > transform.position.y) //man bewegt sich nach oben
        {
            if (facing != Facing.up)
            {
                facing = Facing.up;
                transform.SetPositionAndRotation(transform.position,
                                                 Quaternion.Euler(0, 0, 0));
            }
        }
        if (targetPosition.y < transform.position.y) //man bewegt sich nach unten
        {
            if (facing != Facing.down)
            {
                facing = Facing.down;
                transform.SetPositionAndRotation(transform.position,
                                                 Quaternion.Euler(0, 0, 180));
            }
        }
    }