Welcome, Guest. Please login or register. Did you miss your activation email?

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - coldkillerlips

Pages: [1]
1
Audio / Sine Wave
« on: February 27, 2012, 03:09:57 pm »
I'm a beginner so i can't specifically say what the issue is but something to keep in mind. Type-casting from a float to an int loses precision. That could be causing a rounding error.

2
Graphics / Converting Coords and moving with mouse issue [SOLVED]
« on: February 07, 2012, 06:41:15 am »
I'm not sure why I chose to do it separately. I didn't think it mattered aside from being shorter though.

3
Graphics / Converting Coords and moving with mouse issue [SOLVED]
« on: February 06, 2012, 07:39:26 pm »
Quote from: "RedIrony"
Why do you have
Code: [Select]
this->Dest.x = (MousePos.x - this->GetSprite().GetPosition().x);
this->Dest.y = (MousePos.y - this->GetSprite().GetPosition().y);
?

It looks like you're creating a distance vector relative to the position of the sprite, but in your move function you're treating it like it was relative to the origin.


Thank you very much. That was the issue.

4
Graphics / Converting Coords and moving with mouse issue [SOLVED]
« on: February 06, 2012, 06:21:21 pm »
Ok so i'm totally stumped. I'm trying to move the character using the mouse on a right click. When i move right click it'll sometimes go to the correct position and stop, other times it'll go non-stop or stop at a weird offset. Can anyone tell me what i'm doing wrong?

Code: [Select]

void DynamicEntity::MoveEvent(sf::RenderWindow &Window, sf::View View)
{
if(sf::Mouse::IsButtonPressed(sf::Mouse::Right))
{
sf::Vector2f MousePos(Window.ConvertCoords(sf::Mouse::GetPosition(Window).x, sf::Mouse::GetPosition(Window).y, View));

this->Dest.x = (MousePos.x - this->GetSprite().GetPosition().x);
this->Dest.y = (MousePos.y - this->GetSprite().GetPosition().y);

this->NewLoc = normalize(Dest);

this->SetIsMoving(true);
}
}

void DynamicEntity::Move()
{
if(this->GetIsMoving() == true)
{
if(this->GetSprite().GetPosition().x <= (Dest.x - 5.f) || this->GetSprite().GetPosition().x >= (Dest.x + 5.f))
{
this->MoveSprite(NewLoc.x * movSpeed, 0);
}

if(this->GetSprite().GetPosition().y <= (Dest.y - 5.f) || this->GetSprite().GetPosition().y >= (Dest.y + 5.f))
{
this->MoveSprite(0, NewLoc.y * movSpeed);
}
}
else
{
SetDest(this->GetSprite().GetPosition());
this->NewLoc = this->GetSprite().GetPosition();
this->SetIsMoving(false);
}
}

Pages: [1]