-
Postów
758 -
Dołączył
-
Ostatnia wizyta
Typ zawartości
Profile
Forum
Wydarzenia
Treść opublikowana przez Paqoo
-
Jak wykorzystać timelines? Jak to działa? Można użyć do filmiku w grze? Czy są prostsze wyjścia?? :blink: Z góry thx :thumbsup:
-
Dzięki! Teraz działa jak należy.. :)
-
A jednak sprawia trudności.. :( Zrobiłem tak, że dałem w alarm 5 obj_bohater: global.hlt+=2; global.mp+=1; No i oczywiście dałem wywołanie eventa w step: alarm[5]=room_speed*2; Nie rozumiem dlaczego to nie działa!? :angry:
-
Poszukaj jakichś klocków. W GML jest coś takiego jak: save_game(); i load_game(); Zależy w jakiej wersji Game Maker. Zajrzyj do pomocy programu i wpisz w wyszukiwarke save game, czy coś takiego.. Na pewno coś ci wyszuka =) Pozdrawiam!
-
Przeanalizowałem kod i okazało się, że był błąd w nazwie obiektu. Podmieniłem i działa jak trzeba. Przepraszam za kolejny double post, ale zamykam już to coś :) Moldis wyluzuj! =) Oto miejsce błędu: else { o_ludzik.atak_npc = id; atak = true; } }
-
Moldis ciesz się, że nie mieszkasz u mnie w mieście, bo za takie coś już byś oberwał. Zamiast nabijać sobie posty spamowaniem, pomóż mi. Jak nie potrafisz, to się nie odzywaj.
-
Nie daję rady z tym kodem :crying: Na prawdę proszę o pomoc, gdzieś jest błąd! :sp_ike: Mam nadzieję, że nie dostanę warna. Chciałem odświeżyć temat.. :twisted: Czekam.. :thumbsup:
-
Omg. Weź zaprzestań. Stałe to ja już ogarniam ziomek. "Przykład" - po prostu skrypty mam podobne wiem na czym polegają, nie chce mi się specialni pisać jak moge skorzystać. Ktoś pomoże?
-
Na logike to właśnie tak powinno być, ale mimo to nie działa. Dam więcej kodu, bo może coś w innym miejscu jest zepsute..? Oto on: if hlt <= 0 { instance_destroy() sound_play(smierc); exit; } if atak && o_gracz.atak_npc != id atak = false; var gracz; gracz=instance_nearest(x,y,o_ludzik); if ( distance_to_object(gracz)<dyst ) { podazaj=true; } else { podazaj=false; } if (podazaj==true) { if (gracz.y>y+32) { if (place_free(x,y+16)) k=dol; else { if (gracz.x>x) k=prawo; else k=lewo; } } if (gracz.y<y-32) { if (place_free(x,y-16)) k=gora; else { if (gracz.x>x) k=prawo; else k=lewo; } } if (gracz.x>x+32) { if (place_free(x+16,y)) k=prawo; else { if (gracz.y>y) k=dol; else k=gora; } } if (gracz.x<x-32) { if (place_free(x-16,y)) k=lewo; else { if (gracz.y>y) k=dol; else k=gora; } } } switch (k) { case gora: if entered { yy -= 16; entered = false; k=stoj; } break; case dol: if entered { yy += 16; entered = false; k=stoj; } break; case lewo: if entered { xx -= 16; entered = false; k=stoj; } break; case prawo: if entered { xx += 16; entered = false; k=stoj; } break; } if place_free(xx,yy) { if mp_linear_step(xx,yy,move_speed,false) { entered = true; if (k=stoj) { image_single=0; image_speed=0; } } } else { xx=x; yy=y; } Jest to STEP event wroga - rozbujnika. Coś źle w kodzie? Pomocy ;(
-
Oj nie działa. Wcześniej miałem ten sam kod i działało. Nic nie rozumiem. Jakieś -1 w zmiennej, o to jest? var text,menu; if atak text = 'Przestań atakować'; else text = 'Atakuj'; menu = show_menu(text+'|-|Anuluj',-1); if menu = 0 { if atak { atak_npc = self.id; atak = false; } else { o_gracz.atak_npc = id; atak = true; } } Zaczynam się bulwersować ;d To środkowy etap pomiędzy problemem, a jego rozwiązaniem :)
-
Oto kod walki dla postaci bohatera w alarmie 0: var atak; atak_npc=o_rozbujnik; if distance_to_object(atak_npc) <= 32 { atak = round(random(1)); if atak = 1 { atak_enemy = round(random(global.sila_atk)); if (atak_enemy < atak_npc.obrona || atak_enemy = atak_npc.obrona) { atak_npc.hlt-=0; sound_play(blok); } else { if atak_npc.obrona < atak_enemy { atak_npc.hlt-=atak_enemy-round(random(atak_npc.obrona)); sound_play(dmg); } } } } atak_enemy ma to być dmg naszego przeciwnika. Chcę aby dostawał dmg tylko przeciwnik, który jest bity przez gracza. Co mam robić? Kiedyś to robiłe z łatwością, ale zapomniałem kodu.. Pomożecie? Przeciwnika zaznaczam myszką i wciskam atak.
-
Uważam, że na takich projektach można podszkolić się w programowaniu i planowaniu. Dlatego nie można dać 1.. Ocena musi być adekwatna do wysiłku włożonego w to, co wyszło. A nie wyszło tak tragicznie.. :thumbsup:
-
Wymiana danych pomiędzy serverem, a klientem
Paqoo odpowiedział(a) na Paqoo temat w Pytania zaawansowanych
Nigdy nie korzystałem z tego debuggera.. Nie wiedziałem, że taka komenda istnieje. Dzięki :) Gra ma takš strukturę, że jest server i klienci sš do niego podłšczeni. Pod global.clienttcp jest co takiego: global.clienttcp = tcpconnect(global.serverip,global.serverport,1); Po odpaleniu debuggera nic się nie pojawiło. Mamy problem z odczytywaniem pakietu... Zmieniłem to image_speed na writedouble i odczyt z readdouble. Co teraz?;/ EDIT: Już sobie z tym poradziłem. Wystarczyło dokładnie przeanalizować kod.. -
No coż pojmuje już jak to mniej więcej działa, ale mam problem żeby to, co z "gry" przechodzi do klienta trafiało na server.. <_< Pomożecie? :unsure: Mam coś takiego: KLIENT: obiekt pocisku: <alarm 0> clearbuffer(); writebyte(10); writeshort(x); writeshort(y); writeshort(image_index); writeshort(image_speed); sendmessage(global.clienttcp); obj_klient: <step> case 10: //pocisk pocisk_x = readshort(); pocisk_y = readshort(); pocisk_image_speed = readshort(); pocisk_image_index = readshort(); break; SERVER: obj_klient <step> case 10: pocisk_x = readshort(); pocisk_y = readshort(); pocisk_image_speed = readshort(); pocisk_image_index = readshort(); clearbuffer(); writebyte(10); writeshort(pocisk_x); writeshort(pocisk_y); writeshort(pocisk_image_speed); writeshort(pocisk_image_index); with(obj_client) { sendmessage(tcp); } break; Co to ma ze sobą wspólnego i czemu nie działa?
-
Niezbyt to fajne.. Ale jak na pierwszą grę to i tak zawsze mogło być gorzej.. ;)
-
Podobało mi się. Gierka oryginalna i co najważniejsze ciekawa ;) Jest nieźle..
-
Gierka ładna i ciekawa.. Jak na pierwszą grę to gratuluje! Można dopracować i stworzyć więcej terenów/obszar gry powiększyć i będzie hit kolejny :)
-
Bardzo słabe. Mogłeś się bardziej wysilić.. Ale na zachętę 2.. Brzydkie :(
-
Bardzo ciekawe.. Jak coś wyjdzie to dam znać :) Pomogłeś mi mimo wszystko bardzo :P
-
Bajera :thumbsup: Teraz Ranmus sprawił, że każdy zrobi własną Tibię :P Może Borek coś podchwyci do swojej Almory i nie będzie tylu lagów :lol2:
-
Po przeczytaniu "artykułu" w moim innym temacie stwierdzam, że dam radę =) Dzięki za zaangażowanie. Ten temat zamykam już.
-
Dziękuję Ranmus! Kawał dobrej roboty.. Po prostu biorę się za czytanie :)
-
Nie znałem tego przykładu wcześniej. Jechałem na Racer online, ale tam mało co jest.. Właściwie nie widze odbierania nigdzie.. Może to w skryptach gdzieś w SCRIPTS.. Nie wiem :) Przejrze ten co mi podałes link. THX Dzięki Kirby Online coś już rozumiem. obj_client ma w step całość switchowania. Jeśli switch zwraca wartość bajta np. 2 to wykonywana jest akcja. Wydaje się teraz zrozumiałe. Nie wiem co tam się działo w Racer Engine, ale tam to jakoś inaczej wygląda.. Tutaj widać, że tworzy się zmienną na ID itp. i przypisuje się receivemessage(global.clienttcp).. :P Teraz będzie mi łatwiej i wreszcie jakiś porządek jest.. W miare osiągnięty... Edit X(5?): Jednak po sprawdzeniu RAcer Engine działa podobnie.. Po prostu nie rozumiałem tego wcześniej i ominąłem tę część kodu i się dziwiłem czemu drugi gracz działa, a nie ma kodu do niego ^.^. Jest fajnie! Thx
-
A gdzie ten przykład znajdę? Bo w Google nic nie ma. To "switchowanie" to coś jakby sprawdzanie, czy obiekt istnieje itp.?
-
Nie wiem jak wy, ale ja poczułem klimat Mario =)