Jump to content

[SOLVED] I'm not sure what's missing...


deadlyp99

Recommended Posts

So hello all. I'm creating a script taht logically defines a map:

 

A shortened version of it is:

 

[-1,-1][-1,0][-1,1]
[0, -1][ 0,0 ][0, 1]
[1,-1 ][1, 0 ][1,  1]

 

I've got my output set up to display like this:

StartID: 1 X: -5 Y: -5 MapType: 0 OasisType: 8
StartID: 2 X: -5 Y: -4 MapType: 6 OasisType: 0
StartID: 3 X: -5 Y: -3 MapType: 1 OasisType: 0
StartID: 4 X: -5 Y: -2 MapType: 7 OasisType: 0
StartID: 5 X: -5 Y: -1 MapType: 7 OasisType: 0
StartID: 6 X: -5 Y: 0 MapType: 3 OasisType: 0
StartID: 7 X: -5 Y: 1 MapType: 6 OasisType: 0
StartID: 8 X: -5 Y: 2 MapType: 7 OasisType: 0
StartID: 9 X: -5 Y: 3 MapType: 1 OasisType: 0
StartID: 10 X: -5 Y: 4 MapType: 1 OasisType: 0
StartID: 11 X: -5 Y: 5 MapType: 3 OasisType: 0

 

However, going on a -x,-x to x,x format, I'm finding only one row is being generated, which is

-x,-x to -x,x

I am pretty sure this is a problem in my for loop, but I'm not entirely sure what, so i'll post my code in hopes someone can find the error in my logic.

 

I really appreciate anyone who can provide insight to what the problem is.

Thanks in advanced, and have a great day

 

<?php
$StartID = 0;
$StartX = -5;
$StartY = -5;
$EndX = 5;
$EndY = 5;
$MapType = array('1','2','3','4','5','6','7','8','9','10','11','12');
$OasisType = array('1','2','3','4','5','6','7','8');
$ThePool = array(
'1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1',
'1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1',
'1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1','1',
'1','1',
'2','2','2','2','2','2','2','2','2','2','2','2','2','2','2','2',
'3','3','3','3','3','3','3','3','3','3','3','3','3','3','3','3',
'4','4','4','4','4','4','4','4','4','4','4','4','4','4','4','4',
'5','5','5','5','5','5','5','5','5','5','5','5','5','5','5','5',
'6','6','6','6','6','6','6','6','6','6','6','6','6','6','6','6',
'7','7','7','7','7','7','7','7','7','7','7','7','7','7','7','7',
'8','8','8','8','8','8',
'9','9','9','9','9','9',
'10','10','10','10','10','10',
'11','11',
'12','12',
'1b','1b','1b',
'2b','2b',
'3b','3b','3b',
'4b','4b',
'5b','5b','5b',
'6b','6b',
'7b','7b',
'8b','8b','8b','8b'
);

for ($StartX;$StartX<=$EndX;$StartX++)
{
for ($StartY;$StartY<=$EndY;$StartY++)
{
	$RandomChoice = $ThePool[array_rand($ThePool)];
	if (is_numeric($RandomChoice))
	{
		$MapType = $RandomChoice;
		$OasisType = '0';
	}
	else
	{
		$MapType = '0';
		$OasisType = ExtractOasisType($RandomChoice);
	}
	$StartID += 1;
	print("StartID: ".$StartID." X: ".$StartX." Y: ".$StartY." MapType: ".$MapType." OasisType: ".$OasisType."<br />");
}
}

function ExtractOasisType($Type)
{
$NewStr = str_replace('b', '', $Type);
return $NewStr;
}
?>

Link to comment
https://forums.phpfreaks.com/topic/170203-solved-im-not-sure-whats-missing/
Share on other sites

for ($X = $StartX;$StartX<=$EndX;$X++)
{
for ($Y = $StartY;$StartY<=$EndY;$Y++)
{
	$RandomChoice = $ThePool[array_rand($ThePool)];
	if (is_numeric($RandomChoice))
	{
		$MapType = $RandomChoice;
		$OasisType = '0';
	}
	else
	{
		$MapType = '0';
		$OasisType = ExtractOasisType($RandomChoice);
	}
	$StartID += 1;
	print("StartID: ".$StartID." X: ".$X." Y: ".$Y." MapType: ".$MapType." OasisType: ".$OasisType."<br />");
}
}

change variable name in loop

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.