Gra

0

Tworze gre ekonomiczną i chciałbym aby losowo co jakiś czas dochodziła graczowi kasa. Jak to zrobić???
I jak tworzyć Zapisy gry??? [???]

0

var
I:integer;

begin
Randomize;
I:=Random.50(10);
end;

Nie jestem pewien czy mam dobrze z ta kropka przy random, ale cóż.
zapis gry zależy od tego co ma zapisywać, dokąd.
Możesz wszystko zsumować do memo i

memo1.lines.savetofile(jakis tam plik);

Jeżeli wpiszesz to np. w timerze, to bedzie co sek. zwracac jakas losowa wartość, którą mozna później dodać do tej kasy !!
Z tym zapisywaniem to nie wiem jaka on robi gre i jakie parametry trzeba by zapisać wiec mogłem tylko podac procedurke która moze mu pomóc WESOŁTCH ŚWIAT !!!!!!!!!!!!!!! i szczęśliwego nowego roku

Prosze zwracac mi uwge jeżeli cos źle mówię!!!!!!!!!!!!!!!!!!

0

Witam

  1. Jesli jest jakis powod przyrostu kasy to mozna zrobic tak:

var
powod: array[1..4] of string; //dlaczego dostajesz kase
pow, ile, szanse, losowanie: integer; //dlaczego i ile, jakie szanse, i losowanie
..
powod[1]:='jakis powod';
powod[2]:='jakis powod';
powod[3]:='jakis powod';
powod[4]:='jakis powod';

szanse:=10; // jakie masz szanse na bonus
losowanie:=random(szanse) + 1;

if losowanie=1 then
begin
pow:=random(4) + 1; //losuje haselko
ile:= random(MaksymalnaSumaPieniedzy)+1; //liczba kasy

showmessage('Z powodu ' + powod[pow] + 'zyskales ' + inttostr(ile) + ' zl.'); // tu wstawiac zmiane stanu kasy i wyswietlenie komunikatu i inne takie bajery

end;

najlepiej jest z tego zrobic funkcje jezeli jest to gra turowa to to przy zmianie tury to wstawic, jak nie to do Timera lub do glownej petli gry.

  1. Najpierw musisz zrobic record:

np.

Type
Fgracz = record
kasa=integer;
jakasinnawartosc=innawartosc; //jezeli jest to string to musi byc ograniczonynp. s[255] bo pozniej moga byc cyrki
..
end;
..
var
save: file of Fgracz; //plik gracza
gracz: Fgracz; //sam gracz
..
jakas procedura zapisujaca
begin
assign(save,'c:save.sv'); //przypisujemy plik
rewrite(save);
write(save, gracz); //zapisujemy gracza
closefile(save);
end;
..

jakas procedura wczytujaca
begin
assign(save,'c:save.sv');
reset(save);
read(save, gracz); //wczytujemy gracza
closefile(save);
end;
..

jest to bardzo prosty sposob, dodatowo mozna kodowanie wstawic itp. jezeli cos zle napisalem to mnie poprawcie :)

Pozdrawiam Tobek.

1 użytkowników online, w tym zalogowanych: 0, gości: 1