Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2013-10-29, 17:46


GaCeL







Wiek: 33
Na forum: 5593 dni
Posty: 197
Nick w MP: GaCeL

Piwa: 96

Respekt: 45,3

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?.. :arrow: :piwo:

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-10-29, 20:49


Sillence







Wiek: 26
Na forum: 5157 dni
Posty: 1514
Nick w MP: Sillence

Piwa: 1517

Respekt: 416,3
Respekt: 416,3

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 :)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-10-29, 21:33


Maxvell

d_b






Wiek: 26
Na forum: 4771 dni
Posty: 83
Nick w MP: Kotlet

Piwa: 270

Respekt: 65

nie lepiej skopiowac to z mapy gt? xd

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-10-30, 15:58


Sillence







Wiek: 26
Na forum: 5157 dni
Posty: 1514
Nick w MP: Sillence

Piwa: 1517

Respekt: 416,3
Respekt: 416,3

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  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-10-30, 16:04


optimus

PawnoMen






Wiek: 27
Na forum: 5614 dni
Posty: 453
Nick w MP: [PMS]ReveresPL

Piwa: 159

Respekt: 59

Ostrzeżeń: 80%
Rejmunt jezeli nie umiesz pisac skryptow/gm to nie ucz kopiowania bo programowanie nie na tym polega.

Podpis
Prpgramujesz w Unity i potrzebujesz pomocy?
|?Zapraszamy na forum Unity?|
http://www.unity3d.ugu.pl
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-10-30, 16:46


GaCeL







Wiek: 33
Na forum: 5593 dni
Posty: 197
Nick w MP: GaCeL

Piwa: 96

Respekt: 45,3

"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..

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-10-30, 17:12


Sillence







Wiek: 26
Na forum: 5157 dni
Posty: 1514
Nick w MP: Sillence

Piwa: 1517

Respekt: 416,3
Respekt: 416,3

gacel112, Mo?esz stworzy? nowy, albo doda? tak jak powiedzia?e? :) Wa?ne jest to aby si? cz?sto od?wie?a? :)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-10-30, 17:25


GaCeL







Wiek: 33
Na forum: 5593 dni
Posty: 197
Nick w MP: GaCeL

Piwa: 96

Respekt: 45,3

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);


Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-10-30, 17:31


Sillence







Wiek: 26
Na forum: 5157 dni
Posty: 1514
Nick w MP: Sillence

Piwa: 1517

Respekt: 416,3
Respekt: 416,3

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' ?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-10-30, 17:37


GaCeL







Wiek: 33
Na forum: 5593 dni
Posty: 197
Nick w MP: GaCeL

Piwa: 96

Respekt: 45,3

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;
}


Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-10-30, 17:46


Sillence







Wiek: 26
Na forum: 5157 dni
Posty: 1514
Nick w MP: Sillence

Piwa: 1517

Respekt: 416,3
Respekt: 416,3

gacel112, Zamie?:
Kod:

public Kilosy()

na
Kod:

public Kilosy(playerid)

Oraz Timer zamie? z 'SetTimer' na 'SetTimerEx'

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-10-30, 17:49


GaCeL







Wiek: 33
Na forum: 5593 dni
Posty: 197
Nick w MP: GaCeL

Piwa: 96

Respekt: 45,3

w?asnie to zrobi?em :) teraz testy:)

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-10-30, 17:59


Sillence







Wiek: 26
Na forum: 5157 dni
Posty: 1514
Nick w MP: Sillence

Piwa: 1517

Respekt: 416,3
Respekt: 416,3

gacel112, Na przysz?o??, najpierw sprawd? czy dzia?a a potem napisz post :)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-10-30, 18:07


GaCeL







Wiek: 33
Na forum: 5593 dni
Posty: 197
Nick w MP: GaCeL

Piwa: 96

Respekt: 45,3

a teraz jeszcze jedno pytanie jak zrobi? aby ranga vip dostawa?a premi? np. +20% nabitej kasy ?

Podpis
Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-10-30, 18:35


optimus

PawnoMen






Wiek: 27
Na forum: 5614 dni
Posty: 453
Nick w MP: [PMS]ReveresPL

Piwa: 159

Respekt: 59

Ostrzeżeń: 80%
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 :D

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 :D

Podpis
Prpgramujesz w Unity i potrzebujesz pomocy?
|?Zapraszamy na forum Unity?|
http://www.unity3d.ugu.pl
Postaw piwo autorowi tego posta
 

 
Tagi: naliczanie
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN » [INNE] Naliczanie KM Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku