Ik ben bezig met een online game.
Nu kan je er trainen, en die werkt ook wel. Maar de luck rate is niet heel goed. Het gaat vaker mis dat goed.
Nou is dat ook wel logisch, want je kan 3 dingen krijgen:
- Aangevallen door vijand, geld verloren.
- Aangevallen door vijand, ontsnapt.
- Training gelukt, exp. ontvangen.
Nou heb ik zo dat ik drie nummers in een array heb (1, 2, 3) en drie teksten die bij de nummers horen, dan pak ik met array_rand() 1 van die nummers en de bijbehorende tekst.
Maar aangezien het foutgaan dus altijd 2 kansen heeft en het goed gaan maar 1, zal het foute altijd veel meer gebeuren, nou moet die zowiezo wel meer gebeuren meestal, maar het gebeurt nu veelste vaak.
Je hebt nu 1/3 met een goed resultaat.
Bedenk er 2 bij, zodat het 2/5 word, dan is percentage goed iets hoger, maar blijft het persentage slecht toch hoger..
Misschien wil hij maar 3 opties? Wat nou als je eerst een rand(1,2) doet, 1 is gelukt, 2 is niet. Nu heb je dus 50% kans dat het wel gelukt is of niet. En dan ga je controleren wat het getal is, 2 is met nog een rand kijken welke tekst je dan krijgt en anders is het gelukt.
@vage
Ja dat is waar, maar je moet het maar net zien. Ik was er niet opgekomen om het op jouw manier te doen. Het gebruik array_fill is inderdaad niet zo'n mooi, maar was zo snel de enige manier die ik zag.
Je moet wel nog even $aInput in jouw functie vervangen voor $array. Nu zal hij altijd false returnen. $aInput bestaat immers niet.