All pastes #337844 Raw Edit

Aurel

public text v1 · immutable
·published 2007-02-03 00:40 UTC
rendered paste body
#include "Math.hxx"

bool PLAYER::MayGoTo(Character *p,int posx,int posy)
{

	
	int	tempP_X;
	int	tempP_Y;
	int operatorX,operatorY;
	int movement;
	int i,k;
    Math math;

    if(p->getX_position() < posx )
    {
        operatorX=1;
    }
    else if(p->getX_position() == posx)
    {
        operatorX=0;
    }
    else
    {
        operatorX=-1;
    }

    if( p->getY_position() < posy)
    {
        operatorY=1;
    }
    else if(p->getY_position() > posy)
    {
        operatorY=-1;
    }
    else
    {
        operatorY=0;
    }

    if(operatorY==0)
    {
        movement=math.abs(p->getX_position()-posx);
    }
    else
    {
        movement=math.abs(p->getY_position()-posy);
    }

    tempP_X=p->getX_position();
    tempP_Y=p->getY_position();
    

    for(i=1 ; i< movement ; i++)
    {
        tempP_X=tempP_X+operatorX;
        tempP_Y=tempP_Y+operatorY;

        for(k=0;k<ListOfCharacters.size();k++)
        {
            if(ListOfCharacters[k]->getAlive())
            {
                if((ListOfCharacters[k]->getX_position()==tempP_X)&&(ListOfCharacters[k]->getY_position()==tempP_Y))
                {
                    return false;
                }
            }
        } 

	}
	return true;
}