Is there a better way of doing this switch statement since its so long?
switch ($rare1) { case($rare1 == 1 && $rare2 == 1): // 1 of each egg $egg1 = $egg2 = 100; break; case($rare1 == 1 && $rare2 == 2): // 100% Common - 60% - Uncommon $egg1 = 100; $egg2 = 60; break; case($rare1 == 1 && $rare2 == 3): // 100% Common - 30% Rare $egg1 = 100; $egg2 = 30; break; case($rare1 == 1 && $rare2 == 4): // 100% Common - 10% Ultra-Rare $egg1 = 100; $egg2 = 10; break; case($rare1 == 2 && $rare2 == 1): // 60% Uncomon - 100% Comon $egg1 = 60; $egg2 = 100; break; case($rare1 == 2 && $rare2 == 2): // 60% chance of each egg $egg1 = $egg2 = 60; break; case($rare1 == 2 && $rare2 == 3): // 60% Uncomon - 30% Rare $egg1 = 60; $egg2 = 30; break; case($rare1 == 2 && $rare2 == 4): // 60% Uncomon - 10% Ultra-Rare $egg1 = 60; $egg2 = 10; break; case($rare1 == 3 && $rare2 == 1): // 30% Rare - 100% Common $egg1 = 30; $egg2 = 100; break; case($rare1 == 3 && $rare2 == 2): // 30% Rare - 10% Uncomon $egg1 = 30; $egg2 = 60; break; case($rare1 == 3 && $rare2 == 3): // 30% chance of each egg $egg1 = $egg2 = 30; break; case($rare1 == 3 && $rare2 == 4): // 30% Rare - 10% Ultra-Rare $egg1 = 30; $egg2 = 10; break; case($rare1 == 4 && $rare2 == 1): // 30% Rare - 10% Ultra-Rare $egg1 = 10; $egg2 = 100; break; case($rare1 == 4 && $rare2 == 2): // 30% Rare - 10% Ultra-Rare $egg1 = 10; $egg2 = 60; break; case($rare1 == 4 && $rare2 == 3): // 30% Rare - 10% Ultra-Rare $egg1 = 10; $egg2 = 30; break; case($rare1 == 4 && $rare2 == 4): // 10% chance of each egg $egg1 = $egg2 = 10; break; }
<?php function what( $val1, $val2 ) { $eggs = array( 11 => array( 100, 100 ), 12 => array( 100, 60 ) ); return( $eggs[$val1 . $val2] ); } $out = what( 1, 2 ); print $out[0] . " and " . $out[1] ; ?>
$rarity = array(1=>100,2=>60,3=>30, 4=>10); $egg1 = $rarity[$rare1]; $egg2 = $rarity[$rare2];
won't this achieve the same?
Bjom;10917842 wrote:$rarity = array(1=>100,2=>60,3=>30, 4=>10); $egg1 = $rarity[$rare1]; $egg2 = $rarity[$rare2]; won't this achieve the same?
wow, so much shorter than my code