-
Postów
717 -
Dołączył
-
Ostatnia wizyta
Typ zawartości
Profile
Forum
Wydarzenia
Treść opublikowana przez Mentoss
- Poprzednia
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- Dalej
-
Strona 2 z 29
-
a niby czemu to jest źle. Zmieniam wartości w tablicy, której pierwszy element mieści się w gracz.imie[0]. Wszystko jest ok.
-
Teraz mam na stringu. Btw. kod skowrona był wcześniej. Przepuszczało go, ale w dalszych operacjach były błędy. Teraz jest dobrze - działa.
-
Ty jak coś napiszesz to tracę pewność co do swojej daty urodzenia. Już myślałem, że wiem, jak chcesz, a teraz nie wiem nawet jak myślałem. Jak możesz to ładnie krok po kroku na warstwy rozpisać to pomogę. Teraz nie dam rady, bo nie ogarniam.
-
Z Code::Blocks -a korzystam i oprócz warnów " warning: deprecated conversion from string constant to 'char*' " nie wywala nic. Przynajmniej teraz. Miałem jeszcze parę innych błędów, ale pogooglałem, popoprawiałem literówki i działa.
-
OOO! Zdaje się, że działa. DZIĘKI WSZYSTKIM!
-
Tabelka na górze wygląda tak: 0 -> 1/3 j=5 1/3+1 -> 2/3 j=choose(0,5); 2/3+1 -> koniec j=choose(0,1,2,3,4); ostatnie linijka j=-1; Edit: patrze na Twój post... wszystko zajmuje od połowy rooma w dół?
-
Czyli wartości planszy mają wyglądać tak??: 0 5 5 0 5 0 // 1/5 maxa 1 0 4 2 3 1 3 2 1 4 0 2 // Środkowa część choose(0,1,2,3,4); 1 4 3 2 1 3 x x x x x x// max -> tu x=-1, bo -1 nie mieściło się w ładnej "tabelce" Nie wiem tylko skąd globalj=floor(room_height/64)+5; i gdzie to będzie wypadać...
-
Objekty poruszające się razem z viewem
Mentoss odpowiedział(a) na MB22 temat w Pytania początkujących
@sminer: Nie masz racji. Nie spamuj. Step wykonuje się na dużo wcześniej przed drawem wszystkiego dookoła. Jeżeli wrzuci ten kod do stepa, tto będzie mu chodziło za viewem z lekkim opóźnieniem, o czym napisał w punkcie drugim. @MB22: Zrób, jak napisał edie. GML // DRAW x=view_xview+liczba; y=view_yview+liczba; Nie wiem, jak masz pojawianie się opisów, ale musi być to robione po ustawianiu pozycji. -
@skowron: Tak było wcześniej to mi przy ustawianiu nazwy gracza wszystkie nazwy zmieniało. @ΨΧΞ writestring(); w kodzie 39dll-a potrzebuje char*. Chyba, że wiesz, jak to zamienić/ominąć?
-
Z moim poprzednim problemem udało mi się już na szczęście poradzić, jednak moje szczęście nie trwało długo. 1.) class plr { public: bool jest; double sck; char* imie[]; }; int main() { int i; plr gracz[5]; for(i=0;i<5;i++) { gracz[i].jest=false; gracz[i].imie[0]="PLEJER"; }; i mam genialny efekt - gracze od 0 do 3 włącznie mają w nazwę ustawione domyślnie libgcj_s.dll. Ktoś wie dlaczego?
-
@gnysek: Nawet, jakby pomylił, to ma instance_destroy(); Ja obstawiam wersję Uzjela
-
Gówno prawda. Nie mam zielonego pojęcia, co wg. Cb miałby ten break robić, ale jeżeli to jest osobny skrypt każdy return i tak przerywa ci wykonywanie kodu, więc sam break już nie jest wykonywany i zamiana na exit jest tak samo bezcelowa, jak obecność owego breaka. Nie rozumiem z jakiej racji miałoby losować "aż do j=floor(room_height/64)+5", ale jeżeli tak, to ok. Ogólnie nie ogarniam koncepcji, ale wydaje mi się, że kod jest zgodny z tym, co napisałeś. Edit: @hudy: Otóż to.
-
lepiej dluzszy kod w stepie 1 obj czy rozbic na kilka obj?
Mentoss odpowiedział(a) na taxi_driver temat w Pytania początkujących
nie. Rysowanie poza granicami też zajmuje czas, ale kompletnej zwiechy na tym nie złapiesz. -
@sminer Twój kod nie tylko nie będzie obracał obrazka, ale też wprowadzi ruch instancji. Kolega Piotrek nic o ruchu nie mówił. HuderLord podał dobry kod.
-
Czemu? Bo nie ogarniam...
-
Nie możesz zrobić jak GM? Po stworzeniu sprite'a dać w[0,1]+=1;?
-
bo nie zmieniasz deptha postaci pewnie... nie używaj tila, tylko obiektu, w obiekcie daj depth=-y, to samo u gracza.
-
Yap. Kamień z okiem jest chyba ślepym zaułkiem.
-
Właściwie, to chyba obaj macie rację. Trzymając broń oburącz jest stabilniej, bo ręka nie drży, ale też masz więcej siły do wyhamowania odrzutu.
-
Mam w pętli, ale jest to przy odbieraniu wiadomości od gracza. for(i=0;i<5;i++) { if (gracz[i].jest) { while (true) { double msg=receivemessage(gracz[i].sck,0,0); if (msg<0) { break; } else if (msg==0) { // (...) } else { switch(int a=readbyte(0)) { case 0: gracz[i].imie=readstring(0); // (...) Gracz dołącza do serwera, w odpowiedzi otrzymuje bajt zwrotny informujący o numerze gracza (w razie przyjęcia) bądź przepełnienia serwera. Gdy otrzyma bajt przyjęcia wysyła na serwer nazwe gracza. I tu pojawia się błąd - nazwa ta jest przypisywana wszystkim dotychczasowym graczom.
-
Jest komunikacja, nawet działająca... Mam jednak taki tyci problem, więc żeby nowego tematu nie zakładać: gracz[i].imie=readstring(0); dlaczego zmienia to wszystkie znane elementy na zawartość otrzymaną od klienta, a nie tylko element i (w pętli for)?
-
@Bosu: +1 Zamień wielkościowo kartkę z człowiekiem i będzie lepiej... Od kiedy drzwi mają klamki na środku ??
-
Mówiłem o zwrocie z tcpaccept: double tcpaccept(double sockid, double mode) { CSocket*sock = (CSocket*)sockets.item((int)sockid); if(sock == NULL)return -1; CSocket*sock2 = sock->tcpaccept((int)mode); if(sock2 != NULL)return AddSocket(sock2); return -1; } Stoi jasno i klarownie " return -1; "
-
Właśnie kopiowałem kod do posta, gdy znalazłem literówkę. Serwer łapie. Dzięki.
-
:D Aż taki głupi nie jestem... 39dll.h z paczki z przykładu.
- Poprzednia
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- Dalej
-
Strona 2 z 29