Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
O problema é este, não consigo resolver!
O meu script tem uma variável chamada '$level', que define quantas vezes devem ser distribuidos atributos de outras variáveis.
A cada 1 valor de '$level', 4 pontos são distribuídos: 2 em '$variavel_um', 1 em '$variavel_dois' e 1 em '$resto'
Se $level = 23:
$resto = 22;
$resto_utilizavel = 21; (pois se distribui somente de 3 em 3)
Até aí tudo bem, só que empaquei tentando usar o '$resto_utilizavel' pra distribuir a cada 2 em '$variavel_um' 1 em '$variavel_dois', como faço isso?
Obrigado pela atenção!
<?php $level = $_POST['level'] - 1; ?>
<form action="#" method="POST">
Level: <input type="text" name="level"><br>
<button type="submit">Ver</button>
<?php if(isset($level)){
//Definindo base
$base_str = 6;
$base_vit = 4;
//Definindo atributos distribuidos por nível
$ad_str = 2;
$ad_vit = 1;
$resto = 1;
$resto_final = ($resto * $level);
//Definindo restos utilizados
for($i = $resto_final; $i > 2; $i = $i - 3){ $vezes = $vezes + 1; }
$resto_total = $vezes * ($ad_str + $ad_vit);
//Definindo atribuição dos restos
//Definindo atributos finais
$str_final = $base_str + ($ad_str * $level);
$vit_final = $base_vit + ($ad_vit * $level);
$resto_resto = $resto_final - $resto_total;
echo "<br><br><b>Força:</b> $str_final<br><b>Vitalidade:</b> $vit_final<br><b>Resto:</b> $resto_resto"; } ?>Tenho uma variável com qualquer valor, vamos dizer 50 por exemplo. Quero que ela se transforme no múltiplo por 3 mais alto o possível, no caso seria 48.
Só preciso dividir este 48 em duas variáveis de maneiras diferentes, 2 em uma e 1 em outra, no caso o resultado seria
$variavel_um = 32
$variavel_dois = 16
Bom, supondo que você já encontrou o 48, eu faria assim:
$total = 48;
$var1 = 0;
$var2 = 0;
$distribuir = 3; // Quanto você vai distrubuir
for ($n = $total; $n > 0; $n - $distribuir) {
// 2 + 1 = $distribuir
$var1 += 2;
$var2 += 1;
}
echo "Usando ".$total." pontos, o primeiro valor será ".$var1." e o segundo ".$var2.";Explica melhor...não entendi nada do que você quer.
Se for jogar o número em 2 váriveis daquele jeito seria:
<?php
$x = (Integer) 48;
$y = (Integer) $x/3;
$z = (Integer) $y*2;
?>
Fala aí .. Cara .. explica melhor isso .... tentei fazer mais n sei o que você quer realmente .... poste o que você já tem aí ....vlws