![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 14.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Tworząc panel rejestracji i logowania robiłem to z myślą o stworzeniu gry RPG. I teraz staje przed pewnym problemem. Każdy user ma przypisane określone wartości w tabeli mysql. $login, $energia. $mana, $zycie (pomijam pole $haslo bo to jest raczej nie przydatne).
Następnie pobieram dane o userach który wyświetla mi wszystkich zarejestrowanych w systemie. I chcem aby userzy mogli toczyć walki między sobą czyli po zalogowaniu dany user ma dostęp do bazy zarejestrowanych osób i obok każdego widocznego usera (oprócz siebie samego) będzie widniał mu przycisk walcz. Po jego naciśnięciu w przycisk walcz nie wiem jak wykonać kilka rzeczy. - sprawić aby porównane zostały dane userów (czyli moje zaczynającego walkę oraz atakowanego) - chcem aby posiadana energia byłą przeliczana na ilość zadanych obrażeń czyli im więcej energi posiadam tym większe obrażenia zadaje więc w tym przypadku jeśli posiadam 1000 energii a przeciwnik 100 wygram walkę lecz także otrzymam obrażenia bo chcem aby polecenie było wykonane tak po naciśnięciu walcz ON OTRZYMUJE OBRAŻENIA JA OTRZYMUJE OBRAŻENIA (i tak na zmianę aż do spradku $zycia do zera) |
|
|
![]() |
![]()
Post
#2
|
|
Administrator PHPedia.pl Grupa: Developerzy Postów: 1 102 Pomógł: 2 Dołączył: 14.09.2003 Ostrzeżenie: (0%) ![]() ![]() |
Jak chcesz tworzyć RPGa to najpierw stwórz tak jakbyś pisał zwykły system, a potem przenieś to na kod (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 14.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Za bardzo to mi niestety nie pomogłeś. Konkretnie to mi chodzi o taką rzecz. Jak zrobić aby pobrać dane innego usera gdy ja jestem zalogowany czyli przykłądowo porównać je do moich.
How? |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 42 Pomógł: 0 Dołączył: 23.06.2002 Skąd: Opole Ostrzeżenie: (0%) ![]() ![]() |
$query="SELECT * WHERE imie_wojownika='$przeciwnik_name'";
$result=mysql_query($query); $row=mysql_fetch_array($result); $poziom_przeciwnika=$row["poziom"]; itd.. $roznica_poziomow=$twoj_poziom-$poziom_przeciwnika; a potem if ($roznica_poziomow>1000) { print "Dzieli was zbyt duza roznica poziomow..."; } else { print "walczymny"; } o To Ci chodzilo czy ... jajeczka wielkanocne pozbawily mnie swiadomosci (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ? ;p? Wesolego lanego poniedzialku (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ten post edytował emitra 28.03.2005, 09:21:33 |
|
|
![]()
Post
#5
|
|
Grupa: Przyjaciele php.pl Postów: 1 224 Pomógł: 40 Dołączył: 6.07.2004 Skąd: Wuppertal Ostrzeżenie: (0%) ![]() ![]() |
z reki pisane. 'twoj' zaznaczam osobe atakującą, jego - osobe zaatakowaną. otobe ? Ten post edytował ActivePlayer 28.03.2005, 11:29:11 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 14.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Niby problem z tworzeniem funkcji stał się banalny lecz teraz pojawił się kolejny z którym nie bardzo wiem jak sobie poradzić... Wszysttko to wygląda mniej więcej tak:
Wacek Siła: 20 Energia: 10 Cos tam jeszcze: 5 WALCZ! Stefan Siła: 20 Energia: 10 Cos tam jeszcze: 5 WALCZ I właśnie przykładowo wybieran sobie Stefana (czyt. atakuje go) no i nie bardzo wiem jak zrobić aby po kliku w odnośnik WALCZ zrobić aby rozpoznało z kim ja walcze bo przecież jak dam url do pliku z funkcjami tak jak powyżej będę walczył sam z sobą. Nie bardzo wiem jak sprawić aby rozpoznawało mi osobę/wroga z która bede walczyl i od której beda pobierane statystyki do walki. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 135 Pomógł: 0 Dołączył: 28.09.2003 Skąd: Rzeszów Ostrzeżenie: (0%) ![]() ![]() |
ladujesz to do funkcji, np
i w funkcji sprawdzasz to co chcesz, majac ID atakujacego (zalogowanego gracza) i broniacego sie (przeciwnika) jestes w stanie sprawdzic czy przypadkiem nie sa ta sama osoba, pobrac ich statystyki, przeprowadzic walke itp. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 214 Pomógł: 0 Dołączył: 3.04.2004 Skąd: Legionowo Ostrzeżenie: (0%) ![]() ![]() |
Możesz przekazywać imie wroga w pasku adresu. Dajesz np. odnośnik typu walcz.php?wrog=Stefan. Potem w skrypcie pobierasz je metodą $_GET i wyszukujesz z bazy informacje o wrogu, który ma nick $_GET['wrog']. Jak to ci nie pasuje do reszty do pokombinuj z sesjami albo cookie.
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 14.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(M4chu @ 2005-04-03 22:03:43) ladujesz to do funkcji, np
i w funkcji sprawdzasz to co chcesz, majac ID atakujacego (zalogowanego gracza) i broniacego sie (przeciwnika) jestes w stanie sprawdzic czy przypadkiem nie sa ta sama osoba, pobrac ich statystyki, przeprowadzic walke itp. Niby wszystko jest ok bo twoje zastosowanie jest najtrafniejsze. Lecz nie bardzo wiem jak wczytać (czyt. wyciągnąć je z bazy mysql) a następnie porównać statystyki moje i walczącego ze mną i doprowadzić do rostrzygnięcia pojedynku w którym wygra lepszy. Link u mnie ma taką postać : <a href=index.php?page=$id> czyli widoczna postać linku: index.php?page=1 (gdzie w tym wypadku cyferka 1 jest numerem id gracza) Więc pobieram już id gracza. Lecz nie bardzo wiem co i jak zrobić by dane były poprawnie pobierane do porównania (aby moje dane czyli energia życie siła były porównywanego współczynników wroga) czy swoje dane mam pobierać tylko przez $dane, a dane wroga wyciągać przez GET? Przepraszam za te 'dziwne' pytania lecz niestety po raz pierwszy mam do czynienia z porównywaniem dancyh z bazy oraz wykonywaniem na nich operacji i nie bardzo wiem jak to zrobić... Prosze o wyrozumiałość i o pomoc... |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 108 Pomógł: 0 Dołączył: 7.05.2004 Skąd: Jelenia Góra Ostrzeżenie: (0%) ![]() ![]() |
Gdy pisałem swoją grę to zrobiłem tak, że była zmienna w url typu $walcz. i teraz każdy link WALCZ musi zawierać przekierowanie z nickiem potwora. W pliku w którym były wszystkie funkcje zrobiłem tak:
wiadomo, page to strona na która jestes przekierowywany już z tymi zmiennymi (czyli strona to walka_mob.php), w niej masz cały kod związany z walka pozdrawiam. |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 135 Pomógł: 0 Dołączył: 28.09.2003 Skąd: Rzeszów Ostrzeżenie: (0%) ![]() ![]() |
@ReeV: pasowaloby zrobc pare podstawowych funkcji np do wyciagania wlasnie danych o graczu (nie wazne czy jestes nim Ty czy Twoj przeciwnik - funkcja ma byc uniwersalna) niech bedzie getPlayerStats( $playerId ), w tej funkcji pobierasz statystyki gracza o zadanym id (przyklad masz w poscie przedmowcy) i zwracasz w postaci tablicy. Pozniej np kozystasz z funkcji z mojego poprzedniego posta, a w niej np $attackerStats = getPlayerStats( $attacker ); i analogicznie dla $defendera. Masz teraz dane graczy w postaci dwoch tablic, porownywanie statystyk jest teraz banalne.
pozdro |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 10:05 |