• Fórum kezdőlap
    M.A.G.U.S. Online RPG
    • Keresés
    • GyIK
    • Taglista
  • Felhasználói vezérlőpult
    Belépés
    • Felhasználói vezérlőpult
    • Belépés
  • Postaláda
    Privát üzenetek

Tesztelgetős, fejlesztős

A fórum regisztrált tagjai cseveghetnek itt egymással.

Moderátor: Admin

Hozzászólás küldése
880 hozzászólás • Oldal: 17 / 59 • 1 ... 14, 15, 16, 17, 18, 19, 20 ... 59

Re: Tesztelgetős, fejlesztős

HozzászólásSzerző: Con Larrodan » 2008.05.22. 13:07

No, meguntam a várakozást, és elkezdtem írni egy kocka dobósat magunknak.
Ez a függvény elvileg megvizsgálja az elküldött postot, és ha megtalálja benne a kockadobást, akkor legenerálja azt.

[dice]dbktipus+x[/dice] a plussz az opcionális. :)

tehát pl: 1k6, 2k4+3 stb... a darabszámot muszáj megadni.

Ötleteket várom továbbá, és hogy találtok e hibát a kódban...


Kód: Egész kijelölése
function dice($string)
   {
      $find1 = "[dice]";
      $find2 = "[/dice]";
      $find3 = "+";   
      $pos1 = strpos($string,$find1);
      $pos2 = strpos($string,$find2);

      if (($pos1 === false ) or ($pos2 === false ))
      {
         return($string);
      }
      else
      {
         $st_jobb = stristr($string,$find1);
         $st_jobb_hossz = strlen($st_jobb);
         $st_bal = stristr($st_jobb,$find2);   
         $st_bal_hossz = strlen($st_bal);
         $dobas_hossz = ($st_jobb_hossz - $st_bal_hossz) - strlen($find1);
         $uj_string = substr($st_jobb,strlen($find1),$dobas_hossz);
         $uj_string_hossz = strlen($uj_string);
         $pos3 = strpos($uj_string,$find3);
         
         if ( $pos3 === false)
         {
            $ki = stristr($uj_string,"k");
            $teljes_hossz = strlen($uj_string);
            $maradek_hossz = strlen($ki);
            $meddig = ($teljes_hossz-$maradek_hossz)+1;
           
            $k_darab_str = substr($uj_string,0,$teljes_hossz-$maradek_hossz);
            $k_tipus_str = substr($uj_string,$meddig);

            $k_darab = (int)$k_darab_str;
            $k_tipus = (int)$k_tipus_str;

            $i = 1;
            $j = 0;
            if (($k_tipus > 1) and ($k_darab >= 1))
            {
               while ($i <= $k_darab)
                  {
                  $rand = rand(1,$k_tipus);
                  $eredmenyek[$j] = $rand;
                  $eredmeny += $rand;
                  $i++;
                  $j++;
                  }
            }
            $j = 0;
         while ($j < count($eredmenyek))
            {
               $reszletek = $reszletek.$eredmenyek[$j];
               $j++;
               if ($j < count($eredmenyek))
                  {
                  $reszletek = $reszletek."+";
                  }
            }
           
            $dobas = "<b>".$uj_string." = ".$reszletek." [".$eredmeny."]</b>";
         }
         else
         {
            $ki = stristr($uj_string,"k");
            $teljes_hossz = strlen($uj_string);
            $maradek_hossz = strlen($ki);
            $ki2 = stristr($uj_string,"+");
            $type_hossz = $maradek_hossz - strlen($ki2)-1;
            $meddig = ($teljes_hossz-$maradek_hossz)+1;
            $plussz_hossz = $teljes_hossz - $type_hossz;

            $k_darab_str = substr($uj_string,0,$teljes_hossz-$maradek_hossz);
            $k_tipus_str = substr($uj_string,$meddig,$type_hossz);
            $plussz_str = substr($uj_string,$plussz_hossz);

            $k_darab = (int)$k_darab_str;
            $k_tipus = (int)$k_tipus_str;
            $plussz = (int)$plussz_str;

            $i = 1;
         $j = 0;
            if (($k_tipus > 1) and ($k_darab >= 1))
               {
                  while ($i <= $k_darab)
                     {
                      $rand = rand(1,$k_tipus);
                        $eredmenyek[$j] = $rand;
                        $eredmeny += $rand;
                        $i++;
                        $j++;
                     }
               }
            $eredmeny += $plussz;
           
            $j = 0;
         while ($j < count($eredmenyek))
            {
               $reszletek = $reszletek.$eredmenyek[$j];
               $j++;
               if ($j < count($eredmenyek))
                  {
                  $reszletek = $reszletek."+";
                  }
            }
           
            $dobas = "<b>".$uj_string." = ".$reszletek."+".$plussz." [".$eredmeny."]</b>";
         }
         
         $out = str_replace("[dice]".$uj_string."[/dice]",$dobas,$string);
         return($out);         
      }
   }
Eiresin Wyntumal - Pathfinder
Avatar
Con Larrodan
Admin
Admin
 
Hozzászólás: 3217
Csatlakozott: 2005.08.24. 15:19
Tartózkodási hely: Budapest/Csenger
ZK Karakter: Eiresin Wyntumal
  • Honlap
Vissza a tetejére

Re: Tesztelgetős, fejlesztős

HozzászólásSzerző: Quator ar Zaraquer » 2008.05.22. 14:08

5k1000

A dice gomb hol kellene legyen? 8)
Avatar
Quator ar Zaraquer
Kalandmester
Kalandmester
 
Hozzászólás: 5623
Csatlakozott: 2006.07.12. 18:50
Tartózkodási hely: Gyula
Vissza a tetejére

Re: Tesztelgetős, fejlesztős

HozzászólásSzerző: Castor de Vinter » 2008.05.22. 14:13

Teszt

[dice]5k10+4[/dice]


Hát...semmit se generált...:roll:
Avatar
Castor de Vinter
Kalandmester
Kalandmester
 
Hozzászólás: 4315
Csatlakozott: 2006.12.26. 22:59
Tartózkodási hely: Debrecen
Vissza a tetejére

Re: Tesztelgetős, fejlesztős

HozzászólásSzerző: Con Larrodan » 2008.05.22. 14:22

Mert jelenleg még nem módosítottam a fórum éles kódját :)

Tovább finomítottam a függvényen. Mostmár kiírja a dobásokat egyenként, és a végén []-ben az összeget.
Eiresin Wyntumal - Pathfinder
Avatar
Con Larrodan
Admin
Admin
 
Hozzászólás: 3217
Csatlakozott: 2005.08.24. 15:19
Tartózkodási hely: Budapest/Csenger
ZK Karakter: Eiresin Wyntumal
  • Honlap
Vissza a tetejére

Re: Tesztelgetős, fejlesztős

HozzászólásSzerző: Castor de Vinter » 2008.05.22. 14:36

Teszt2

[dice]5k10+4[/dice]
Avatar
Castor de Vinter
Kalandmester
Kalandmester
 
Hozzászólás: 4315
Csatlakozott: 2006.12.26. 22:59
Tartózkodási hely: Debrecen
Vissza a tetejére

Re: Tesztelgetős, fejlesztős

HozzászólásSzerző: Togar » 2008.05.22. 18:14

teszt

[dice]1k100+3[/dice]
Nem az a lényeg kinek van kezében fegyver, hanem az ki üt először.-harcművész
Nem az a lényeg hogy ki üt először, hanem hogy legyen sör-Tooma pap

Tedd vagy ne tedd, de ne próbáld...

Először ütünk aztán nem kérdezünk semmit...-törpe taktikai útmutató
Avatar
Togar
Játékos Karakter
Játékos Karakter
 
Hozzászólás: 1638
Csatlakozott: 2007.12.15. 8:46
Tartózkodási hely: Debrecen
  • Honlap
Vissza a tetejére

Re: Tesztelgetős, fejlesztős

HozzászólásSzerző: Sessaryen » 2008.05.22. 19:13

Sziasztok!

Most én vagyok vak, vagy tényleg nem ír ki dobott számot a gen?

S.
"Bocsáss meg! Eszemet az idő meg nem óvta,
Most fekete,fakó, mint könyv, múlt mélyiből."


Dale Avery: A Renegát
Avatar
Sessaryen
Olvasó
Olvasó
 
Hozzászólás: 984
Csatlakozott: 2007.10.08. 23:54
Tartózkodási hely: Debrecen
ZK Karakter: Torum - Belső ellenség /Warhammer/
Vissza a tetejére

Re: Tesztelgetős, fejlesztős

HozzászólásSzerző: Con Larrodan » 2008.05.22. 19:15

Con Larrodan írta:Mert jelenleg még nem módosítottam a fórum éles kódját :)

:LOL:
Eiresin Wyntumal - Pathfinder
Avatar
Con Larrodan
Admin
Admin
 
Hozzászólás: 3217
Csatlakozott: 2005.08.24. 15:19
Tartózkodási hely: Budapest/Csenger
ZK Karakter: Eiresin Wyntumal
  • Honlap
Vissza a tetejére

Re: Tesztelgetős, fejlesztős

HozzászólásSzerző: Con Larrodan » 2008.05.23. 6:14

Lehet bizakodni, már megvan fejben, hogy hogyan van a helyes algoritmus. ^^
Nem tudja valaki hogy a posting.php forrásában hol a túróban van a szöveget beküldő változó? oO
Eiresin Wyntumal - Pathfinder
Avatar
Con Larrodan
Admin
Admin
 
Hozzászólás: 3217
Csatlakozott: 2005.08.24. 15:19
Tartózkodási hely: Budapest/Csenger
ZK Karakter: Eiresin Wyntumal
  • Honlap
Vissza a tetejére

Re: Tesztelgetős, fejlesztős

HozzászólásSzerző: Togar » 2008.05.23. 6:20

Khm ez számomra költői kérdés hátha valakinek megvan a helyes válasza.
Nem az a lényeg kinek van kezében fegyver, hanem az ki üt először.-harcművész
Nem az a lényeg hogy ki üt először, hanem hogy legyen sör-Tooma pap

Tedd vagy ne tedd, de ne próbáld...

Először ütünk aztán nem kérdezünk semmit...-törpe taktikai útmutató
Avatar
Togar
Játékos Karakter
Játékos Karakter
 
Hozzászólás: 1638
Csatlakozott: 2007.12.15. 8:46
Tartózkodási hely: Debrecen
  • Honlap
Vissza a tetejére

Re: Tesztelgetős, fejlesztős

HozzászólásSzerző: Con Larrodan » 2008.05.24. 12:21

No, akkor teszteljünk :D

KÉ: [*dice*]1k10 = 1 [1][*/dice*]
TÉ: [*dice*]1k100 = 63 [63][*/dice*]

Sp: [*dice*]2k6+2 = 3+2(+2) [7][*/dice*]
Eiresin Wyntumal - Pathfinder
Avatar
Con Larrodan
Admin
Admin
 
Hozzászólás: 3217
Csatlakozott: 2005.08.24. 15:19
Tartózkodási hely: Budapest/Csenger
ZK Karakter: Eiresin Wyntumal
  • Honlap
Vissza a tetejére

Re: Tesztelgetős, fejlesztős

HozzászólásSzerző: Con Larrodan » 2008.05.24. 12:30

Tehát [dice][/dice] közé 1k6, 1k10+2, 2k6-2, 1k100 stb. :)
Eiresin Wyntumal - Pathfinder
Avatar
Con Larrodan
Admin
Admin
 
Hozzászólás: 3217
Csatlakozott: 2005.08.24. 15:19
Tartózkodási hely: Budapest/Csenger
ZK Karakter: Eiresin Wyntumal
  • Honlap
Vissza a tetejére

Re: Tesztelgetős, fejlesztős

HozzászólásSzerző: Sessaryen » 2008.05.24. 12:38

TESZT

[*dice*]2k6+2 = 6+3(+2) [11][*/dice*]
[*dice*]1k10 = 10 [10][*/dice*]
[*dice*]1k20 = 10 [10][*/dice*]
[*dice*]1k100+15+20 = 46(+20) [66][*/dice*]

Sess
"Bocsáss meg! Eszemet az idő meg nem óvta,
Most fekete,fakó, mint könyv, múlt mélyiből."


Dale Avery: A Renegát
Avatar
Sessaryen
Olvasó
Olvasó
 
Hozzászólás: 984
Csatlakozott: 2007.10.08. 23:54
Tartózkodási hely: Debrecen
ZK Karakter: Torum - Belső ellenség /Warhammer/
Vissza a tetejére

Re: Tesztelgetős, fejlesztős

HozzászólásSzerző: Sessaryen » 2008.05.24. 12:40

Szia!

Hmm, úgy látom a többszörös összeadást nem szereti... :D

Sess
"Bocsáss meg! Eszemet az idő meg nem óvta,
Most fekete,fakó, mint könyv, múlt mélyiből."


Dale Avery: A Renegát
Avatar
Sessaryen
Olvasó
Olvasó
 
Hozzászólás: 984
Csatlakozott: 2007.10.08. 23:54
Tartózkodási hely: Debrecen
ZK Karakter: Torum - Belső ellenség /Warhammer/
Vissza a tetejére

Re: Tesztelgetős, fejlesztős

HozzászólásSzerző: Con Larrodan » 2008.05.24. 12:48

Azt nem. Csak egy számot adhatsz hozzá vagy vonhatsz ki belőle.
Eiresin Wyntumal - Pathfinder
Avatar
Con Larrodan
Admin
Admin
 
Hozzászólás: 3217
Csatlakozott: 2005.08.24. 15:19
Tartózkodási hely: Budapest/Csenger
ZK Karakter: Eiresin Wyntumal
  • Honlap
Vissza a tetejére

ElőzőKövetkező

Hozzászólás küldése
880 hozzászólás • Oldal: 17 / 59 • 1 ... 14, 15, 16, 17, 18, 19, 20 ... 59

Vissza: Csevegõ

Ki van itt

Jelenlévő fórumuzók: nincs regisztrált felhasználó

  • Fórum kezdőlap
  • A csapat • Fórum sütik törlése • Időzóna: UTC + 1 óra
Theme created by Matti from MMOstyles.com
Powered by phpBB
Magyar fordítás © Magyar phpBB Közösség