offline
- NIx Car
- Legendarni građanin
- Més que un club
- Glavni vokal @ Harpun
- Pridružio: 27 Feb 2009
- Poruke: 3898
- Gde živiš: Novi Sad,Klisa
|
U prošlom tutorijalu smo obradili kako da promenimo font, u ovom tutorijalu ćemo obrađivati glavnu petlju u kojoj se igra izvršava. Ovde ću pokazati kako da na ekranu prikažete reč, koja se pojavljuje slovo po slovo.
Napomena: Kod za C i C++ se razlikuju.
C
#include<allegro.h>
//posto radimo sa stringovima, dodajemo biblioteku string.h
#include<string.h>
//Ovde sam uveo novu boju, za bojenje teksta na ekranu
#define TamnoPlava makecol (44, 117, 255)
#define SirinaEkrana 800
#define VisinaEkrana 600
int main()
{
allegro_init();
install_keyboard();
set_color_depth(32);
set_gfx_mode(GFX_AUTODETECT_WINDOWED, SirinaEkrana, VisinaEkrana, 0, 0);
set_window_title("Lekcija 4");
//Uvodimo brojac kako bismo string koji imamo, slovo po slovo, kopirali u jedan prazan string.
int brojac = 0;
char rec[10] = "Lekcija 4";
char CrtajRec[10] = "";
//Uslov izlaska iz petlje nam je da brojac mora da bude veci ili jednak broju karaktera koje ima promenljiva rec.
while(brojac < strlen(rec))
{
CrtajRec[brojac] = rec[brojac]; //Posto ovde kopiramo karaktere, a ne citav string, mozemo koristiti operator dodele, a ne funkciju strcpy();
brojac++;
//Ispisujemo trenutni string na ekran.
textout_centre_ex(screen, font, CrtajRec, SirinaEkrana / 2, VisinaEkrana / 2, TamnoPlava, -1);
//Funkcija rest zamrzava ekran na odredjeni broj milisekundi, na isti nacin kao funkcija delay() ili Sleep();
rest(200);
clear_bitmap(screen);
}
allegro_exit();
return 0;
}
END_OF_MAIN()
C++
#include<allegro.h>
//posto radimo sa stringovima, dodajemo biblioteku string
#include<string>
//Ovde sam uveo novu boju, za bojenje teksta na ekranu
#define TamnoPlava makecol (44, 117, 255)
#define SirinaEkrana 800
#define VisinaEkrana 600
int main()
{
allegro_init();
install_keyboard();
set_color_depth(32);
set_gfx_mode(GFX_AUTODETECT_WINDOWED, SirinaEkrana, VisinaEkrana, 0, 0);
set_window_title("Lekcija 4");
//Uvodimo brojac kako bismo string koji imamo, slovo po slovo, kopirali u jedan prazan string.
int brojac = 0;
std::string rec = "Lekcija 4";
std::string CrtajRec = "";
//Uslov izlaska iz petlje nam je da brojac mora da bude veci ili jednak broju karaktera koje ima promenljiva rec. Za to koristimo metodu length()
while( brojac < rec.length())
{
CrtajRec += rec[brojac];
brojac++;
/*Posto je Allegro 4 pisan za rad sa C-om, nas string mroamo konvertovati u string koji je Allegru citljiv.
To cemo uraditi dodavanjem .c_str() metode nakon pisanja imena promenljive CratjRec.
*/
textout_centre_ex(screen, font, CrtajRec.c_str(), SirinaEkrana / 2, VisinaEkrana / 2, TamnoPlava, -1);
//Funkcija rest zamrzava ekran na odredjeni broj milisekundi, na isti nacin kao funkcija delay() ili Sleep();
rest(200);
clear_bitmap(screen);
}
allegro_exit();
return 0;
}
END_OF_MAIN()
|