What's new

Inteligentne gry w tibii

Status
Not open for further replies.

Magic

3+3=3!
Joined
Aug 4, 2008
Messages
1,338
Reaction score
180
Praca konkursowa.
Autor: rtoip aka CabroN
Link:
Filmik z dzia?ania(wymagany w tej rundzie): coming soon
Dodatkowe informacje:
Przedstawiam trzy gry w Tibii - k??ko i krzy?yk, snake, saper. Mia? by? jeszcze tetris, ale to przy innej okazji. Dodatkowo mo?na sprawdzi? na stronce najlepsze wyniki danego gracza. Tabele bazy danych s? tworzone automatycznie przy nowym wyniku.
  • Wchodzimy do data/mods/ i tworzymy gry.xml:
    HTML:
    <?xml version="1.0" encoding="UTF-8"?>
    <mod name="gielda" version="1.0" author="rtoip aka CabroN" contact="rtoip tibia.net.pl" enabled="yes">
    	<action actionid="44401;44402" event="script" value="gry.lua"/>
    	<movement type="StepIn" actionid="44403" event="script" value="gry.lua"/>
    </mod>
  • Nast?pnie do data/mods/scripts/gry.lua wklejamy:
  • Dodatkowo mo?emy umo?liwi? sprawdzanie wynik?w na stronie. W pliku characters.php pod:
    PHP:
    $deads = 0;
    dodajemy
    PHP:
    		$gry = array(array('saper', 'ASC', true), array('snake', 'DESC', false));
                    $id = $player->getCustomField("id");
    		$i = false;
    		$main_content .= '<table width="100%">';
    		foreach($gry as $gra)
    		{
    			$res = $SQL->query('SELECT *, UNIX_TIMESTAMP(`time`) AS ts FROM `scores` WHERE `pid` = '.$id.' AND `gra` = \''.$gra[0].'\' ORDER BY `wynik` '.$gra[1].' LIMIT 5;')->fetchAll();
    			$main_content .= '<tr bgcolor="'.$config['site']['lightborder'].'"><td colspan="2" align="center"><big>'.(empty($res)? 'Nie zagrano jeszcze w ':'Najlepsze wyniki w ').$gra[0].'</big></td></tr>'.(empty($res)? '':'<tr bgcolor="'.$config['site']['vdarkborder'].'"><td class="white"><b>'.($gra[2]? 'Czas' : 'Wynik').'</b></td><td class="white"><b>Kiedy</b></td></tr>');
    			if(!empty($res))
    				foreach($res as $t)
    				{
    					$diff = time() - $t["ts"];
    					$main_content .= '<tr bgcolor="'.($i? $config['site']['darkborder']:$config['site']['lightborder']).'"><td>'.($gra[2]? floor($t["wynik"]/60).':'. $t["wynik"]%60 : $t["wynik"]).'</td><td>'.($diff < 60? $diff .' sek. temu':($diff < 3600? floor($diff/60) .' min. temu':($diff < 24*60*60? floor($diff%86400/3600) .' godz. '. floor($diff%3600/60) .' min. temu':date("d.m H:i", $t["ts"])))).'</td></tr>';
    					$i = !$i;
    				}
    		}
    		$main_content .= '</table><br />';
Testowano na Ubuntu 10.04, Lua 5.1.4, najnowszym MySQL, Apache2, PHP i TFS 0.3.6pl1.
 

Magic

3+3=3!
Joined
Aug 4, 2008
Messages
1,338
Reaction score
180
Odp: #3 Inteligentne gry w tibii - rtoip

Odp: #3 Inteligentne gry w tibii - rtoip

Ups, my?la?em ?e link kt?ry wygas? by? linkiem ze skryptami. Nie spodziewa?em si?, ?e w 200 liniach zawarte b?d? 3 gry, jak w skrypcie innego uczestnika jest jedna w podobnej ilo?ci. Skrypt pierwsza klasa, naprawd? jeste? dobrym, genialnym skrypterem. 10/10.
 
Last edited:

Xart Irok

Senior User
Joined
Sep 7, 2008
Messages
2,925
Reaction score
419
Age
32
Odp: #3 Inteligentne gry w tibii - rtoip Punkty 10/10 Miejsce: 1

Odp: #3 Inteligentne gry w tibii - rtoip Punkty 10/10 Miejsce: 1

Bardzo por?czna rzecz, tylko w PHP brak?o wynik?w z tic-tac, szkoda ?e mi si? p??no przypomnia?o bo mog?em do tamtej listy napisa? jeszcze gr? w statki, jak by kto? by to napisa? by?o by brechtownie, kod jest czysty, ale Tic-Tac powinien by? na onAddItem.
 

rtoip

Active User
Joined
Feb 17, 2009
Messages
96
Reaction score
12
Odp: #3 Inteligentne gry w tibii - rtoip Punkty 10/10 Miejsce: 1

Odp: #3 Inteligentne gry w tibii - rtoip Punkty 10/10 Miejsce: 1

Bardzo por?czna rzecz, tylko w PHP brak?o wynik?w z tic-tac, szkoda ?e mi si? p??no przypomnia?o bo mog?em do tamtej listy napisa? jeszcze gr? w statki, jak by kto? by to napisa? by?o by brechtownie, kod jest czysty, ale Tic-Tac powinien by? na onAddItem.
Na pocz?tku te? my?la?em o statkach, ale p??niej zapomnia?em. Nie ma wynik?w tic-tac, bo nie ma punktacji tak jak w saperze (czas) albo snake'u (punkty). Tic-tac jest na onUse - mo?na gra? bez item?w.
 
Status
Not open for further replies.
Top