Wysłany: 2013-10-29, 17:46
GaCeL
Wiek: 33 Na forum: 5593 dni Posty: 197
Nick w MP: GaCeL
Piwa : 96
Witam!
Dzi? wpad?em na pomys? aby zrobi? na serwerze truck nabijanie kilometr?w .
Nie wiem od czego zacz?? mo?ecie mi jakie? przyk?ady da?.
Chc? aby za dan? ilo?? km dosta? po roz?adowaniu kasiute.
Je?eli jest inny towar to inaczej przelicza na kas? ale to ju? potem.
Zimne Piwa si? grzej?..
Wysłany: 2013-10-29, 20:49
Sillence
Wiek: 26 Na forum: 5157 dni Posty: 1514
Nick w MP: Sillence
Piwa : 1517
gacel112 , No to lecimy A wi?c tak, zaczynamy od stworzenia prostego systemu nabijania 'przebiegu' (Dajesz to w timerze, podczas gdy za?adujesz towar. Potem ew. mo?esz ten timer zabi?.)
Dodajesz zmienne:
Kod: new Float:Przebieg[MAX_VEHICLES], Float:Pozxx[MAX_VEHICLES][7];
Potem kod do Timera:
Kod: new vehicleid = GetPlayerVehicleID(playerid);
GetVehiclePos(vehicleid, Pozxx[vehicleid][3], Pozxx[vehicleid][4], Pozxx[vehicleid][5]);
Przebieg[vehicleid] += floatsqroot(floatpower(floatsub(Pozxx[vehicleid][3], Pozxx[vehicleid][0]), 2) + floatpower(floatsub(Pozxx[vehicleid][4], Pozxx[vehicleid][1]), 2)+floatpower(floatsub(Pozxx[vehicleid][5], Pozxx[vehicleid][2]), 2));
Tak to wy?wietlasz w TD:
Kod: format(string, sizeof(string), "Przebieg: %.01f", Przebieg[vehicleid]/290);
I potem sprawdzasz warunkiem:
Kod: if(Przebieg[vehicleid] >= 15)
{
//Dajesz kase i score
return 1;
}
W?tpi? aby to by?o dobre rozwi?zanie poniewa? gracz mo?e je?dzi? sobie po mapie, nabije ile? tam kilometr?w i dostanie du?o kasy i punkt?w. Chyba ?e dasz jakie? ograniczenie czasowe, to wtedy co innego
Wysłany: 2013-10-29, 21:33
Maxvell
d_b
Wiek: 26 Na forum: 4771 dni Posty: 83
Nick w MP: Kotlet
Piwa : 270
nie lepiej skopiowac to z mapy gt? xd
Wysłany: 2013-10-30, 15:58
Sillence
Wiek: 26 Na forum: 5157 dni Posty: 1514
Nick w MP: Sillence
Piwa : 1517
Rejmunt , Jak si? co? bezmy?lnie kopiuje to potem cz?sto wychodz? z tego jakie? powik?ania, typu crash. A tu chodzi o to aby si? nauczy? samemu pisa?
Ostatnio zmieniony przez Sillence 2013-10-30, 16:12, w całości zmieniany 1 raz
Wysłany: 2013-10-30, 16:04
optimus
PawnoMen
Wiek: 27 Na forum: 5614 dni Posty: 453
Nick w MP: [PMS]ReveresPL
Piwa : 159
Rejmunt jezeli nie umiesz pisac skryptow/gm to nie ucz kopiowania bo programowanie nie na tym polega.
Wysłany: 2013-10-30, 16:46
GaCeL
Wiek: 33 Na forum: 5593 dni Posty: 197
Nick w MP: GaCeL
Piwa : 96
"Sillence" napisał/a :
Potem kod do Timera:
Kod: new vehicleid = GetPlayerVehicleID(playerid);
GetVehiclePos(vehicleid, Pozxx[vehicleid][3], Pozxx[vehicleid][4], Pozxx[vehicleid][5]);
Przebieg[vehicleid] += floatsqroot(floatpower(floatsub(Pozxx[vehicleid][3], Pozxx[vehicleid][0]), 2) + floatpower(floatsub(Pozxx[vehicleid][4], Pozxx[vehicleid][1]), 2)+floatpower(floatsub(Pozxx[vehicleid][5], Pozxx[vehicleid][2]), 2));
A teraz do kt?rego timera wklei? tego gdzie dodaje mam ,?e ju? jestesmy zaladowani?
Troszeczke ?le. bo chcia?em ?eby co 1 km np. dawa?o nam 200 $ przyk?adowo..
Wysłany: 2013-10-30, 17:12
Sillence
Wiek: 26 Na forum: 5157 dni Posty: 1514
Nick w MP: Sillence
Piwa : 1517
gacel112 , Mo?esz stworzy? nowy, albo doda? tak jak powiedzia?e? Wa?ne jest to aby si? cz?sto od?wie?a?
Wysłany: 2013-10-30, 17:25
GaCeL
Wiek: 33 Na forum: 5593 dni Posty: 197
Nick w MP: GaCeL
Piwa : 96
b??d:
Kod:
C:\Documents and Settings\Bonzo Hacker\Pulpit\PTM\Lolek.pwn(2248) : error 017: undefined symbol "vehicleid"
C:\Documents and Settings\Bonzo Hacker\Pulpit\PTM\Lolek.pwn(4701) : error 017: undefined symbol "vehicleid"
C:\Documents and Settings\Bonzo Hacker\Pulpit\PTM\Lolek.pwn(5662) : error 017: undefined symbol "playerid"
Linijki:
2248:
Kod: if(Przebieg[vehicleid] >= 15)
4701:
Kod: format(string, sizeof(string), "Przebieg: %.01f", Przebieg[vehicleid]/290);
5662:
Kod: new vehicleid = GetPlayerVehicleID(playerid);
Wysłany: 2013-10-30, 17:31
Sillence
Wiek: 26 Na forum: 5157 dni Posty: 1514
Nick w MP: Sillence
Piwa : 1517
gacel112 , Przy tych 2 pierwszych linijkach to dodaj t? zmienn? zaraz nad nimi:
Kod:
new vehicleid = GetPlayerVehicleID(playerid);
if(Przebieg[vehicleid] >= 15)
Kod:
new vehicleid = GetPlayerVehicleID(playerid);
format(string, sizeof(string), "Przebieg: %.01f", Przebieg[vehicleid]/290);
A co do tego ostatniego b??du to gdzie to umieszczasz? Czy w tym callbacku/funkcji masz dodany argument 'playerid' ?
Wysłany: 2013-10-30, 17:37
GaCeL
Wiek: 33 Na forum: 5593 dni Posty: 197
Nick w MP: GaCeL
Piwa : 96
Kod: public Kilosy()
{
new vehicleid = GetPlayerVehicleID(playerid);
GetVehiclePos(vehicleid, Pozxx[vehicleid][3], Pozxx[vehicleid][4], Pozxx[vehicleid][5]);
Przebieg[vehicleid] += floatsqroot(floatpower(floatsub(Pozxx[vehicleid][3], Pozxx[vehicleid][0]), 2) + floatpower(floatsub(Pozxx[vehicleid][4], Pozxx[vehicleid][1]), 2)+floatpower(floatsub(Pozxx[vehicleid][5], Pozxx[vehicleid][2]), 2));
return 1;
}
Wysłany: 2013-10-30, 17:46
Sillence
Wiek: 26 Na forum: 5157 dni Posty: 1514
Nick w MP: Sillence
Piwa : 1517
gacel112 , Zamie?:
Kod:
na
Kod:
Oraz Timer zamie? z 'SetTimer' na 'SetTimerEx'
Wysłany: 2013-10-30, 17:49
GaCeL
Wiek: 33 Na forum: 5593 dni Posty: 197
Nick w MP: GaCeL
Piwa : 96
w?asnie to zrobi?em teraz testy:)
Wysłany: 2013-10-30, 17:59
Sillence
Wiek: 26 Na forum: 5157 dni Posty: 1514
Nick w MP: Sillence
Piwa : 1517
gacel112 , Na przysz?o??, najpierw sprawd? czy dzia?a a potem napisz post
Wysłany: 2013-10-30, 18:07
GaCeL
Wiek: 33 Na forum: 5593 dni Posty: 197
Nick w MP: GaCeL
Piwa : 96
a teraz jeszcze jedno pytanie jak zrobi? aby ranga vip dostawa?a premi? np. +20% nabitej kasy ?
Wysłany: 2013-10-30, 18:35
optimus
PawnoMen
Wiek: 27 Na forum: 5614 dni Posty: 453
Nick w MP: [PMS]ReveresPL
Piwa : 159
No to z propocji.
100% - np.200$
120% - x
(120% poniewa? 20% premia +100% czyli ca?o??)
wi?c:
Kod:
new x=0;
x=(120*200)/100
GivePlayerMoney(playerid, x); //teraz x przechowuje warto?? kasy razem z premi?
Jeszcze jedno. Ten kod umie?? w warunku ?e gracz jest vip'em
Je?eli si? w czym? pomyli?em to prosz? poprawi?
[ Dodano : 2013-10-30, 19:59 ]
Ale dobre. U?y?em twojego kodu SillenCe i wywala mi Pawno :@
[ Dodano : 2013-10-30, 20:04 ]
Dobra ju? poprawi?em
Tagi: naliczanie
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: