First off,
Thanks Khris and Dualnames for your help with my last post and with this dry test.
I am now on part 2 of my control pad.
I have built a Radar GUI.
On this is an animated Radar screen.
On the Radar GUI screen is a small object that represents the enemy's location in that room. I am certain you have come across this before.
cWaeks is the NPC enemy and BSonar is the Button Object and cEgo is the player.
And yes, I did call it Sonar but it is actually a Radar.
I am sure there is a better way but the way I have written it is as follows in the Rep Exec:
//SIDEWAYS
if (cWaeks.x<10)
{
BSonar.X =2;
}
else if (cWaeks.x<20)
{
BSonar.X =8;
}
else if (cWaeks.x<40)
{
BSonar.X = 12;
}
else if (cWaeks.x<60)
{
BSonar.X = 16;
}
else if (cWaeks.x<80)
{
BSonar.X = 22;
}
else if (cWaeks.x<100)
{
BSonar.X = 24;
}
else if (cWaeks.x<110)
{
BSonar.X = 28;
}
else if (cWaeks.x<130)
{
BSonar.X = 30;
}
else if (cWaeks.x<140)
{
BSonar.X = 32;
}
else if (cWaeks.x<160)
{
BSonar.X = 38;
}
else if (cWaeks.x<190)
{
BSonar.X = 40;
This seems to work alright. However, I am having a slight snag with Y co-ordinates.
The NPC by the way walks timed Randomly.
I am sure that there is a better way then what I have to check both X and Y co=ordinates
EDIT: Having worked on it the following works its purpose. Though I expect, yet again, its a long version:
// UP AND DOWN
}
if (cWaeks.y<50)
{
BSonar.Y=3;
}
else if (cWaeks.y<70)
{
BSonar.Y=6;
}
else if (cWaeks.y<100)
{
BSonar.Y=10;
}
else if (cWaeks.y<118)
{
BSonar.Y=16;
}
else if (cWaeks.y<126)
{
BSonar.Y=20;
}
else if (cWaeks.y<130)
{
BSonar.Y=24;
}
else if (cWaeks.y<140)
{
BSonar.Y=34;
Help appreciated
steptoe
Are you kidding?
What happened to using arithmetics?
BSonar.X = cWaeks.x/5;
BSonar.Y = cWaeks.y/3;
I'm sorry but anybody who can't figure this out should stay the hell away from programming... :-X
Quote from: Khris on Thu 08/03/2012 13:16:19
-snip-
I'm sorry but anybody who can't figure this out should stay the hell away from programming... :-X
Wait, programming requires math?!? Stop the presses, ring the church bells, and tell Donald Knuth so he can write a series of 5 books that confuses the shit out of me ??? Besides, it's not like it's the worst that code could be abused. I mean, look at the abomination I created (programmers with a faint heart need not look):
Spoiler
SDATAW.WriteString("R");SDATAW.WriteString("0");SDATAW.WriteString("-1");SDATAW.WriteString("2");SDATAW.WriteString("-1");SDATAW.WriteString("1");SDATAW.WriteString("353");SDATAW.WriteString("241");
SDATAW.WriteString("D");SDATAW.WriteString("1");SDATAW.WriteString("-1");SDATAW.WriteString("0");SDATAW.WriteString("-1");SDATAW.WriteString("3");SDATAW.WriteString("348");SDATAW.WriteString("247");
SDATAW.WriteString("D");SDATAW.WriteString("2");SDATAW.WriteString("-1");SDATAW.WriteString("4");SDATAW.WriteString("-1");SDATAW.WriteString("0");SDATAW.WriteString("417");SDATAW.WriteString("266");
SDATAW.WriteString("R");SDATAW.WriteString("3");SDATAW.WriteString("6");SDATAW.WriteString("1");SDATAW.WriteString("7");SDATAW.WriteString("5");SDATAW.WriteString("284");SDATAW.WriteString("241");
SDATAW.WriteString("R");SDATAW.WriteString("4");SDATAW.WriteString("8");SDATAW.WriteString("9");SDATAW.WriteString("-1");SDATAW.WriteString("-1");SDATAW.WriteString("422");SDATAW.WriteString("241");
SDATAW.WriteString("D");SDATAW.WriteString("5");SDATAW.WriteString("-1");SDATAW.WriteString("3");SDATAW.WriteString("-1");SDATAW.WriteString("10");SDATAW.WriteString("279");SDATAW.WriteString("269");
SDATAW.WriteString("D");SDATAW.WriteString("6");SDATAW.WriteString("11");SDATAW.WriteString("-1");SDATAW.WriteString("3");SDATAW.WriteString("-1");SDATAW.WriteString("299");SDATAW.WriteString("236");
SDATAW.WriteString("D");SDATAW.WriteString("7");SDATAW.WriteString("3");SDATAW.WriteString("-1");SDATAW.WriteString("12");SDATAW.WriteString("-1");SDATAW.WriteString("318");SDATAW.WriteString("305");
SDATAW.WriteString("D");SDATAW.WriteString("8");SDATAW.WriteString("13");SDATAW.WriteString("-1");SDATAW.WriteString("4");SDATAW.WriteString("-1");SDATAW.WriteString("455");SDATAW.WriteString("236");
SDATAW.WriteString("D");SDATAW.WriteString("9");SDATAW.WriteString("-1");SDATAW.WriteString("14");SDATAW.WriteString("-1");SDATAW.WriteString("4");SDATAW.WriteString("486");SDATAW.WriteString("253");
SDATAW.WriteString("R");SDATAW.WriteString("10");SDATAW.WriteString("-1");SDATAW.WriteString("5");SDATAW.WriteString("-1");SDATAW.WriteString("15");SDATAW.WriteString("215");SDATAW.WriteString("241");
SDATAW.WriteString("R");SDATAW.WriteString("11");SDATAW.WriteString("16");SDATAW.WriteString("17");SDATAW.WriteString("6");SDATAW.WriteString("-1");SDATAW.WriteString("284");SDATAW.WriteString("172");
SDATAW.WriteString("R");SDATAW.WriteString("12");SDATAW.WriteString("7");SDATAW.WriteString("-1");SDATAW.WriteString("-1");SDATAW.WriteString("18");SDATAW.WriteString("284");SDATAW.WriteString("310");
SDATAW.WriteString("R");SDATAW.WriteString("13");SDATAW.WriteString("-1");SDATAW.WriteString("-1");SDATAW.WriteString("8");SDATAW.WriteString("19");SDATAW.WriteString("421");SDATAW.WriteString("172");
SDATAW.WriteString("R");SDATAW.WriteString("14");SDATAW.WriteString("-1");SDATAW.WriteString("-1");SDATAW.WriteString("-1");SDATAW.WriteString("9");SDATAW.WriteString("491");SDATAW.WriteString("241");
SDATAW.WriteString("D");SDATAW.WriteString("15");SDATAW.WriteString("-1");SDATAW.WriteString("10");SDATAW.WriteString("-1");SDATAW.WriteString("15");SDATAW.WriteString("210");SDATAW.WriteString("282");
SDATAW.WriteString("D");SDATAW.WriteString("16");SDATAW.WriteString("21");SDATAW.WriteString("-1");SDATAW.WriteString("11");SDATAW.WriteString("-1");SDATAW.WriteString("322");SDATAW.WriteString("167");
SDATAW.WriteString("D");SDATAW.WriteString("17");SDATAW.WriteString("-1");SDATAW.WriteString("22");SDATAW.WriteString("-1");SDATAW.WriteString("11");SDATAW.WriteString("348");SDATAW.WriteString("204");
SDATAW.WriteString("D");SDATAW.WriteString("18");SDATAW.WriteString("-1");SDATAW.WriteString("12");SDATAW.WriteString("-1");SDATAW.WriteString("23");SDATAW.WriteString("279");SDATAW.WriteString("345");
SDATAW.WriteString("D");SDATAW.WriteString("19");SDATAW.WriteString("-1");SDATAW.WriteString("13");SDATAW.WriteString("-1");SDATAW.WriteString("22");SDATAW.WriteString("417");SDATAW.WriteString("190");
SDATAW.WriteString("R");SDATAW.WriteString("20");SDATAW.WriteString("-1");SDATAW.WriteString("15");SDATAW.WriteString("-1");SDATAW.WriteString("-1");SDATAW.WriteString("146");SDATAW.WriteString("241");
SDATAW.WriteString("R");SDATAW.WriteString("21");SDATAW.WriteString("-1");SDATAW.WriteString("-1");SDATAW.WriteString("16");SDATAW.WriteString("-1");SDATAW.WriteString("284");SDATAW.WriteString("103");
SDATAW.WriteString("R");SDATAW.WriteString("22");SDATAW.WriteString("-1");SDATAW.WriteString("19");SDATAW.WriteString("-1");SDATAW.WriteString("17");SDATAW.WriteString("353");SDATAW.WriteString("172");
SDATAW.WriteString("R");SDATAW.WriteString("23");SDATAW.WriteString("-1");SDATAW.WriteString("18");SDATAW.WriteString("-1");SDATAW.WriteString("-1");SDATAW.WriteString("215");SDATAW.WriteString("310");
//this is only because I don't have a proper 'level creator' to make specific levels, instead of just random ones.
Hey Steptoe, don't be afraid to try and solve a problem on paper (or a whiteboard if you have one). If you can figure it out on paper then programming it will be easy. That, and if you ever forget something, you have a hard copy you can look from!
Thank you.
Khris:
BSonar.X = cWaeks.x/5;
BSonar.Y = cWaeks.y/5;
Works best.
Don't be too harsh.. ;) Cheers anyhow khris.
Thanks guys