Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] System poziomów
Forum PHP.pl > Forum > Przedszkole
lukaszphp
Witam, chciałem napisać mały system poziomów, żeby można było zbierać doświadczenie (EXP) i wraz z jego wzrostem, poziom doświadczenia (LVL). Pomysł miałem taki, że w bazie, w tabeli users trzymać będę dane dotyczące użytkownika i jego ilość EXPa, a potem w skrypcie z jakiegoś wzoru zmienię go na LVL. Proszę o rady i wskazówki, jak tego dokonać, bo kompletnie nie wiem jak się za to zabrać.

1. Zmiana doświadczenia na poziom (wg wzoru).
2. Zwiększanie / zmniejszanie doświadczenia, np. za wygraną / porażkę (kwerenda UPDATE?).
3. Ilość potrzebnego EXP do następnego poziomu.

Z góry dzięki za pomoc i pozdrawiam,
Łukasz. smile.gif
set4812
hmm w uzytkownikach aktualny exp i lvl .
W skrypcie robisz switcha i kazdy case odnosi sie do lvl , w case zwiekszasz exp obliczasz ile brakuje zwiekszasz poziom itd
Fifi209
Cytat(lukaszphp @ 2.07.2010, 20:00:21 ) *
Witam, chciałem napisać mały system poziomów, żeby można było zbierać doświadczenie (EXP) i wraz z jego wzrostem, poziom doświadczenia (LVL). Pomysł miałem taki, że w bazie, w tabeli users trzymać będę dane dotyczące użytkownika i jego ilość EXPa, a potem w skrypcie z jakiegoś wzoru zmienię go na LVL. Proszę o rady i wskazówki, jak tego dokonać, bo kompletnie nie wiem jak się za to zabrać.

1. Zmiana doświadczenia na poziom (wg wzoru).
2. Zwiększanie / zmniejszanie doświadczenia, np. za wygraną / porażkę (kwerenda UPDATE?).
3. Ilość potrzebnego EXP do następnego poziomu.

Z góry dzięki za pomoc i pozdrawiam,
Łukasz. smile.gif

1. który sobie musisz sam ustalić.
2. Sam dałeś sobie odpowiedź
3. to łączy się z pkt 1
Wicepsik
Cytat(lukaszphp @ 2.07.2010, 20:00:21 ) *
1. Zmiana doświadczenia na poziom (wg wzoru).

  1. for($poziom=1;$poziom<101;$poziom++){
  2. $exp[$poziom] = pow($poziom,2) + 100;
  3. }
  4. print_r($exp);
  5. foreach($exp as $v){
  6. $lvl[] = sqrt($v-100);
  7. }
  8. print_r($lvl);


Cytat(lukaszphp @ 2.07.2010, 20:00:21 ) *
2. Zwiększanie / zmniejszanie doświadczenia, np. za wygraną / porażkę (kwerenda UPDATE?).

Tak.

Cytat(lukaszphp @ 2.07.2010, 20:00:21 ) *
3. Ilość potrzebnego EXP do następnego poziomu.

  1. $eksp = 5025;
  2. echo pow(ceil(sqrt($eksp-100)),2)+100-$eksp;

lukaszphp
@Wicepsik
Dzięki, już trochę mi rozjaśniłeś sprawę, mógłbyś jeszcze trochę opisać ten kod? I jak ma wyglądać mniej więcej struktura bazy danych? Dzięki za pomoc. smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.