Pastebin

New pastes are no longer accepted · Stats

Latest Pastes

act

 if (attacker)
    {

        int xdiff = this->x - attacker->x;
        int ydiff = this->y - attacker->y;
        int absxdiff = std::abs(xdiff);
        int absydiff = std::abs(ydiff);

        if ((absxdiff == 1 && absydiff == 0) || (absxdiff == 0 && absydiff == 1) || (absxdiff == 0 && absydiff == 0))
        {
         //if(attacker == this->punk)
           if(attacker != this->owner) // don't attack character if it's pet owner
            this->Attack(attacker);
            return;
        }

        else if (absxdiff > absydiff)
        {
            if (xdiff < 0)
            {
                this->direction = DIRECTION_RIGHT;
            }
            else
            {
                this->direction = DIRECTION_LEFT;
            }
        }
        else
        {
            if (ydiff < 0)
            {
                this->direction = DIRECTION_DOWN;
            }
            else
            {
                this->direction = DIRECTION_UP;
            }
        }

        if (!this->Walk(this->direction))
        {
            this->Walk(static_cast<Direction>(util::rand(0,3)));
        }
    }