anpera.net https://anpera.homeip.net/phpbb3/ |
|
Steuern https://anpera.homeip.net/phpbb3/viewtopic.php?f=34&t=5352 |
Seite 1 von 1 |
Autor: | Lucian [ So 10 Jul, 2011 17:19 ] |
Betreff des Beitrags: | Steuern |
Und zwar..Bei uns hat sich der Durchschnitt bei Kronen so entwickelt: Kronen im Durchschnitt pro User - April: 34567 (Serverstart) Kronen im Durchschnitt pro User - Mai: 65122 Kronen im Durchschnitt pro User - Mai: 88915 Kronen im Durchschnitt pro User - Juni: 102654 Kronen im Durchschnitt pro User - Juli: 350449 Es ist heftig vorallem von Juni auf Juli.. deswegen haben wir uns eine eine STeuer überlegt, die "Luxussteuer" Ich habs in der Newday mit ner Freundin so gemacht: PHP: $money=$session[user][gold]+$session[user][goldinbank]; if ($money>=5000000){$taxes=$money-($money*0.36)/100;} elseif($money>=4000000){$taxes=$money-($money*0.20)/100;} elseif($money>=3000000){$taxes=$money-($money*0.19)/100;} elseif($money>=2000000){$taxes=$money-($money*0.17)/100;} elseif($money>=1000000){$taxes=$money-($money*0.15)/100;} elseif($money>=900000){$taxes=$money-($money*0.9)/100;} elseif($money>=800000){$taxes=$money-($money*0./100;} elseif($money>=700000){$taxes=$money-($money*0.7)/100;} elseif($money>=600000){$taxes=$money-($money*0.6)/100;} elseif($money>=500000){$taxes=$money-($money*0.5)/100;} elseif($money>=400000){$taxes=$money-($money*0.4)/100;} elseif($money>=300000){$taxes=$money-($money*0.3)/100;} elseif($money>=200000){$taxes=$money-($money*0.2)/100;} elseif($money>=100000){$taxes=$money-($money*0.1)/100;} //hab mal etwas gestaffelt if($taxes>0){ if($taxes>$session[user][gold]){$session[user][gold]=0; $session[user][goldinbank]-$steuern2;} else{$session[user][gold]-=$taxes;} } output($taxes); Er zieht dann immer am Neuen Tag die ganzen Kronen ab..soll er aber nicht :/ Was mach ich nur falsch? |
Autor: | Eliwood [ So 10 Jul, 2011 18:07 ] |
Betreff des Beitrags: | Re: Steuern |
Mal eine Frage - bist du sicher, dass das, was du da aufschrieben hast, auch das ist, was du willst? Schau dir mal die Formeln an - die machen keinen Sinn. $this->bbcode_second_pass_code('', '// [...] elseif($money>=1000000){$taxes=$money-($money*0.15)/100;} // [...] elseif($money>=200000){$taxes=$money-($money*0.2)/100;} elseif($money>=100000){$taxes=$money-($money*0.1)/100;}') Fassen wir mal zusammen (von unten (am wenigsten Geld) bis nach oben): 100'000 Kronen: Die Steuern betragen 100'000 - ((100'000 * 0.1 / 100)) = 100'000 - 100'000 / 1000 = 100'000 - 100 = 99'900 Steuern. 200'000 Kronen: Die Steuern betragen 200'000 - ((200'000 * 0.2 / 100)) = 200'000 - 200'000 / 500 = 200'000 - 400 = 199'600 Steuern 1'000'000 Kronen: Die Steuern betragen 1'000'000 - ((1'000'000 * 0.15/100)) = 1'000'000 - 1'000'000 / 666.6... = 1'000'000 - 1'500 = 998'500 Steuern Zudem steigt dein "Nichtsteuersatz", oder wie man das auch immer nennen mag, bis 900'00 massiv an - und sinkt dann plötzlich zusammen, um langsam auf 0.35 zu steigen? Obwohl der Satz einst bei 0.9 stand? Warum vermutlich nicht funktioniert: $this->bbcode_second_pass_code('', 'if($taxes>0){ if($taxes>$session[user][gold]){$session[user][gold]=0; $session[user][goldinbank]-$steuern2;} else{$session[user][gold]-=$taxes;} }') Die Steuern sind > 0. Wenn die Steuern mehr sind, als der User in der Hand hat, wird das Gold in der Hand auf 0 gesetzt (soweit richtig). Dann aber verkleinerst du GoldaufderBank um $steuern2 - $steuern2 taucht hier aber zum allersten mal auf und ist völlig undefiniert! Der Rest müsste funktionieren. Das heisst, der Grund, warum es nicht funktioniert, ist einfach: Kaum jemand wird fast sein gesamtes Gold auf der Hand haben, denn nur dann funktioniert dieser Code-Teil, so, wie er soll... Edit: Und abgesehen davon fehlt auch ein Gleichheitszeichen beim Abzug des Goldes von der Bank. Nicht, dass das in diesem Fall einen Unterschied machen würde, funktionieren tuts eh nicht. |
Autor: | Minerva [ Fr 15 Jul, 2011 08:09 ] |
Betreff des Beitrags: | Re: Steuern |
Danke, nu seh ich den Fehler.. weiß shcon warum ich nicht gerne übern Messanger hinweg drüber code ohne die Fehler sehen zu können... $this->bbcode_second_pass_code('', 'if($taxes>0){ if($taxes>$session[user][gold]){$session[user][gold]=0; $session[user][goldinbank]-$steuern2;} else{$session[user][gold]-=$taxes;} }') da ist i.wie ne Zeile verschwunden.. $this->bbcode_second_pass_code('', 'if($taxes>0){ if($taxes>$session[user][gold]){ $steuern2=$taxes-$session[user][gold]; //ging wohl i.wo verloren $session[user][gold]=0; $session[user][goldinbank]-=$steuern2;} else{$session[user][gold]-=$taxes;} }') müsste so nun stimmen. (und meine Steuerkurve sah auch ein wenig anders aus... aber naja.. das is deine Sache ^^) |
Seite 1 von 1 | Alle Zeiten sind UTC + 1 Stunde |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |