-
Postów
560 -
Dołączył
-
Ostatnia wizyta
Typ zawartości
Profile
Forum
Wydarzenia
Odpowiedzi opublikowane przez Boro Casso
-
-
zapewne wysyłasz pozycje i nadajesz nadajesz ją obiektowi jako x y.
Jeżeli tak to odrazo ci piszę że tak się nie robi, przesuwaj postacie jakąś z punkcji mp_ lub move_ to pozycji odebranej.
-
Wiem wiem, jak już pisałem, wszystko tworzone było dawno temu.
A increment_speed jest odzelną funkcją z racji ze prócz samego speed miało być tam więcej kodu.
-
GMLsound_loop(index)
lub
GMLif !sound_isplaying(index)sound_play(index);
-
Wszystko pisane było w devie bardzo dawno temu, odkopałem mój stary przykład więc publikuje, może komuś się przyda.
/* Przykład stworzony przez Boro casso Obrazuje on Praktycznie zastosowanie w stopniu podstawowym biblioteke allegro. Jeżeli masz jakieś pytania gg:6854542 E-mail borocasso[malpa]gmail.com Gra posiada wszystkie niezbedne opcje. Wszystkie funkcje zostały opisane za pomocą komentarzy. */ #include <allegro.h> #include <string> #include <iostream> #include <ctime> using namespace std; volatile long speed = 0; void increment_speed() { speed++; } END_OF_FUNCTION(increment_speed); LOCK_VARIABLE(speed); LOCK_FUNCTION(increment_speed); int main() { srand(static_cast<int>(time(NULL))); allegro_init(); //Deklaruje funkcje allegro install_keyboard(); //Deklaruje obsługę klawiatury set_color_depth(16); //Ustawia głębię kolorów, możliwe tryby to : 8, 15, 16, 24, 32 bity. set_gfx_mode(GFX_AUTODETECT_WINDOWED,800,600,0,0); //Tym poleceniem włączamy tryb graficzny. liczby 800 i 600 to rozdzelczość install_timer(); //Uruchamia timer install_int_ex(increment_speed, BPS_TO_TIMER(80)); //Deklaruje timer BITMAP *bufor = NULL; // BITMAP *postac_gora00 = NULL; //Deklarowanie zmiennych BITMAP *monster = NULL; // BITMAP *drzewo_spr = NULL; // bufor = create_bitmap(800,600); //Tworzenie bufora. postac_gora00 = load_bmp("gracz.bmp",default_palette); //Ładowanie zasobów graficznych. monster = load_bmp("monster.bmp",default_palette); drzewo_spr = load_bmp("drzewko.bmp",default_palette); int ludek_x = 1, ludek_y = 1, ludek_hp = 100; //Zmienne dotyczące postaci gracza int monster_hp[10], monster_x[10], monster_y[10], strona_mon = 1; //Tablice dotyczące przeciwników int map[800][600]; //Tablica dotycząca mapy int frame = 0; //Zmienne która będzie stosowana do zarządzania klatkami animacji. string strona = "lewo"; //Zmienna łańcuchowa. for (int i=1; i<=10; i++)//Pętla wypełniająca talice z potworami { monster_hp[i]=100; //Zdrowie monster_x[i]=rand() % 800; //Połozenie na osi x monster_y[i]=rand() % 600; //Połozenie na osi y } for (int i=1; i<=800; i+=32)//Pętla wypełniająca talice z mapą for (int j=1; j<=600; j+=32) { map[i][j]=rand() % 10; } while( !key[KEY_ESC]) //Pętla, w środku niej podajemuwszystki akcje dot. gry. { //textprintf(screen,font,20,20,makecol(255,255,128),"HP: %d",ludek_hp); //Rysuje napis hp: nasze zdrowie. while( speed > 0) { if( key[KEY_LEFT] && (map[ludek_x-32][ludek_y]!=8) && (frame==0 || frame==20)) { ludek_x-=32; strona = "lewo"; } //Poruszanie się lewo if(key[KEY_RIGHT] && (map[ludek_x+32][ludek_y]!=8) && (frame==0 || frame==20)) { ludek_x+=32; strona = "prawo"; } //Poruszanie się prawo if(key[KEY_UP] && (map[ludek_x][ludek_y-32]!=8) && (frame==0 || frame==20)) { ludek_y-=32; strona = "gora"; } //Poruszanie się górę if(key[KEY_DOWN] && (map[ludek_x][ludek_y-32]!=8) && (frame==0 || frame==20)) { ludek_y+=32; strona = "dol"; } //Poruszanie się dół speed--; frame++; if( frame > 39) frame=0; } clear_to_color(bufor, makecol(80,220,80)); //Rysuje tło. //Rysowanie gracza \/ if( frame<20) { draw_sprite(bufor, postac_gora00, ludek_x, ludek_y); } else if( frame>=20 && frame<40) { draw_sprite(bufor, postac_gora00, ludek_x, ludek_y); } //Rysowanie gracza /\ for (int i=1; i<=10; i++) //Pętla obsługująca przeciwników. { strona_mon = rand() % 10; //Losowanie strony poruszania się przeciwnika if (strona_mon == 0 && (frame==0 || frame==20) ){ monster_x[i]+=32;} if (strona_mon == 1 && (frame==0 || frame==20)){ monster_y[i]+=32;} if (strona_mon == 2 && (frame==0 || frame==20)){ monster_x[i]-=32;} if (strona_mon == 3 && (frame==0 || frame==20)){ monster_y[i]-=32;} draw_sprite(bufor, monster, monster_x[i], monster_y[i]); //Rysowanie przeciwnika } for (int i=1; i<=800; i+=32)//Pętla wypełniająca talice z mapą for (int j=1; j<=600; j+=32) { if (map[i][j]==8) {draw_sprite(bufor, drzewo_spr, i, j);} } for (int i=1; i<=10; i++) //Pętla odpowiedzalna za walkę if (ludek_x>=monster_x[i]-15 && ludek_x<=monster_x[i]+15 && ludek_y>=monster_y[i]-14 && ludek_y<=monster_y[i]+14) { ludek_hp=ludek_hp - (rand() % 3); monster_hp[i]=monster_hp[i] - (rand() % 5); if (monster_hp[i]<=0) { monster_x[i]=-100; } } blit( bufor, screen, 0,0,0,0, 800,600); //Kopiowanie bufor na ekran } //Czyszczenie zasobów remove_int( increment_speed); destroy_bitmap(postac_gora00); destroy_bitmap(monster); destroy_bitmap(bufor); allegro_exit(); //Wychodzenie z trybu allegro return 0; //Program zwraca 0 } END_OF_MAIN();
-
Create
GMLplik = file_text_open_write( "log.txt" );Step
GMLif keyboard_check_pressed(vk_anykey)file_text_write_string( plik , keyboard_lastchar );
Game End
GMLfile_text_close( plik ) -
Załóżmy ze ktoś ma chore serce, nie gra w żadne gry bo wystraszenie = zawał.
Patrzy po screenach o taka gra raczej mnie nie wystraszy gra, gra, gra Bum zombie, pikawa mu staje. I śmierć ?
Ogólnie ani to śmieszne ani straszne. Pokazałeś tym tylko że nie potrafisz stworzyć żadnej porządnej gry.
-
w step dajesz na początku
GMLif (other.direction>=90 && other.direction<=180) other.sprite_index = sPlayerspr_left1;if (other.direction>=180 && other.direction<=270) other.sprite_index = sPlayerspr_down1;
if (other.direction>=270 && other.direction<=360) other.sprite_index = sPlayerspr_right1;
if (other.direction>=0 && other.direction<=90) other.sprite_index = sPlayerspr_up1;
Puźniej
GMLif(point_distance(x,y,px,py)>6){
mp_potential_step(px,py,5,0)
image_speed = 0.2;
}else {
image_speed = 0; image_index = 0;
}
W global mouse left pressed
GMLif place_free(mouse_x,mouse_y){px = mouse_x div 32 * 32;
py = mouse_y div 32 * 32;
direction=round(point_direction(x,y,mouse_x,mouse_y));
A i w create
GMLimage_speed = 0;px=xstart;
py=ystart
-
a void przed main ?
-
skorzystaj z sound_isplaying(sound)
np
GMLif !(sound_isplaying(sound1)) sound_play(sound1); -
skasuj
move_towards_point
i daj tylko
GMLmp_potential_step_object(obj_person.x,obj_person.y,4,0);w create obiektów które są ścianami daj
GMLsolid = true;W sumie jest to sposób tylko do amatorskich gier bo do czegoś lepszego wypadało by napisać jakiś patch finder.
-
Płock
-
System jest w wersji beta, nie lepiej zainstalować go na wirtualnej maszynie ?
-
1. Stawiasz 5prostokątków dookoła planszy i jeden nad planszą
2. Budujesz plansze w wielkiej kuli która jest niebem.
3. background ?
-
Ja jestem z Płocka do wawy mam około 1,5h jazdy, gdyby było więcej osób mógłbym wpaść.
-
Ja bym to przez ltp podłączył, i napisał prosty sterownik w assemblerze.
-
Zresztą pożycz może od kogoś kartę wifi i sprawdź czy w twoim zasięgu nie ma niezabezpieczonej sieci, do której będziesz mógł się podłączyć. tongue2.gif
No tak ale to będzie nielegalne. Od 09 roku weszła ustawa że bez pozwolenia administratora/właściciela sieci nie można się z nią łączyć od tak sobie.
A jeżeli chcesz router za 60/70 zł, napisz do mnie na gg to ci mogę używkę odsprzedać.
-
Kolego ale nie podajesz tam ip strony tylko koniecznie 127.0.0.1
-
Najłatwiej tak
Wchodzisz do katalogu C:\windows\system32\drivers\etc
Otwierasz plik hosts za pomocą edytora tekstowego np. notatnika
I masz miej więcej coś takiego
# Copyright (c) 1993-2006 Microsoft Corp. # # This is a sample HOSTS file used by Microsoft TCP/IP for Windows. # # This file contains the mappings of IP addresses to host names. Each # entry should be kept on an individual line. The IP address should # be placed in the first column followed by the corresponding host name. # The IP address and the host name should be separated by at least one # space. # # Additionally, comments (such as these) may be inserted on individual # lines or following the machine name denoted by a '#' symbol. # # For example: # # 102.54.94.97 rhino.acme.com # source server # 38.25.63.10 x.acme.com # x client host 127.0.0.1 localhost ::1 localhost
na samym końcu dodajesz np.
127.0.0.1 gmclan.org
-
Zwiększ depth ścian.
-
W gm masz wbudowany pseudo antyanalising
Wchodzisz w global game settings i zaznaczasz ptaszkiem opcje Interpolate colors between pixels
-
skasuj skrypt i przepisz wszystko sam, a nie copy, paste :-)
-
Boro Casso widziałeś kiedyś -1 obiektów? biggrin.gif
No no w sumie masz racje, tak z przyzwyczajenia machnąłem.
a jeżeli jest 6 rodzai kul ???
GMLif (instance_number(kulka1)=0 and instance_number(kulka2)=0 and instance_number(kulka3)=0) room_goto_next(); -
Można przecież skorzystać z gm'oiwej grawitacji lub jakiegoś dlla.
-
Odnajduj drogę w stepie, z tego co pamiętam to funkcja zwraca true jak utworzy drogę skorzystaj z tego.
Nuklo Zombi
w Gotowe gry i programy
Opublikowano
Jedna z lepszych produkcji na gmc.
Czemu lepszych ? Gra ma super old-schoolowy klimat.
Moja ocena to 4