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

Wysłany: 2013-11-04, 21:30


ekicam2

KISS






Wiek: 28
Na forum: 5602 dni
Posty: 31
Nick w MP: ekicam2

Piwa: 11

Respekt: 50

U?ywamy biblioteki stream wi?c na samym pocz?tku gamemode'a musimy wpisa?, oraz definiujemy zmienn? ammunation ;) zaraz dowiesz si? dlaczego
Pawn
#include <stream>
new CpAmm[MAX_PLAYERS][10];
//widzisz tutaj deklaracj? tablicy dwuwymiarowej 2 liczba w tym przypadku 10 jest zale?na od tego ile zamierzasz zrobi? Checkpoint?w b?d?cych sklepem ammunation 
nast?pnie chcemy zrobi? checkpoint za pomoc? naszej zaimplementowanej biblioteki czyli u?ywamy
Pawn
CreateDynamicCP(Float:xFloat:yFloat:zFloat:sizeworldid = -1interiorid = -1playerid = -1Float:streamdistance 100.0);


PAMI?TAJ ABY NAPISA? TO W PUBLICU OnPlayerConnect inaczej kompilator wyrzuci error

Ale zak?adamy ze w p??niejszym czasie b?dzie nam potrzebny dost?p do tego markera, wi?c musimy go przypisa? do czego?, w tym przypadku naj?atwiej b?dzie zrobi? zmienn? o nazwie "ammunation1" dlatego mamy co? takiego:
Pawn
CpAmm[playerid][0] = CreateDynamicCP(Float:xFloat:yFloat:zFloat:sizeworldid = -1interiorid = -1playerid = -1Float:streamdistance 100.0);


teraz musimy zareagowa? kiedy kto? wejdzie w marker wi?c piszemy nowego publica kt?ry obs?u?y nas w takim wypadku-
Pawn
public OnPlayerEnterDynamicCP(playeridcheckpointid){ 
//TO DO

return 1;
}


Teraz mo?emy zareagowa? kiedy kto? wejdzie do naszego markera ale sk?d mamy wiedzie? kt?ry to marker? musimy sprawdzi? za pomoc? if'a. kod kt?ry jest tutaj wklejamy za "//TO DO"
Pawn
if(checkpointid == CpAmm[playerid][0]){
 //TUTAJ WYWO?UJEMY NASZE GUI
}


jak wywo?a? GUI?
Pawn
ShowPlayerDialog(playerid0DIALOG_STYLE_LIST"Ammunation Shop""1 bron \n2 bron \n3 bron \n itp.""Kup""Anuluj"); 


teraz posklejaj kod i napisz co otrzyma?e? ;)

Podpis


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-11-05, 14:49


bnscs







Wiek: 39
Na forum: 4609 dni
Posty: 15

Piwa: 1

Respekt: 56

Wiem ?e to mo?e i wydawa? si? ?mieszne lecz tego nie ogarniam czy to wgl. mia?oby tak wygl?da? ?

Kod:

#include <a_samp>
#include <streamer>

new CpAmm[MAX_PLAYERS][3];

public OnPlayerConnect(playerid)

CreateDynamicCP(296.9141,-38.5124,1001.5156, Float:size, worldid = -1, interiorid = 1, playerid = -1, Float:streamdistance = 100.0);
CpAmm[playerid][0] = CreateDynamicCP(296.9141,-38.5124,1001.5156, Float:size, worldid = -1, interiorid = 1, playerid = -1, Float:streamdistance = 100.0);

public OnPlayerEnterDynamicCP(playerid, checkpointid){
if(checkpointid == CpAmm[playerid][0]){
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_LIST, "Ammunation Shop", "Deagle \M4 \AK-47 \Shotgun.", "Kup", "Anuluj");
return ;1
}
return ;1
}


No i do ko?ca nie wiem co i jak a dok?adniej :
Kod:

Float:size, worldid = -1, interiorid = 1, playerid = -1, Float:streamdistance = 100.0);


Kod:

Float:size,
Rozmiar checkpointa ?
Kod:

interiorid = 1,
ID danego interioru ?

I czy na pewno ma by? ?
Kod:

#include <stream>


Czy tak jak napisa?em w kodzie na pocz?tku .

Jest to dla mnie ci??ka misja lecz mam nadzieje ?e masz jeszcze troch? cierpliwo?ci by jako? mnie pokierowa? ;)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-11-05, 15:49


ekicam2

KISS






Wiek: 28
Na forum: 5602 dni
Posty: 31
Nick w MP: ekicam2

Piwa: 11

Respekt: 50

Pawn
#include <a_samp>
#include <streamer>

new CpAmm[MAX_PLAYERS][3];//ilo?? checkpoint?w

public OnPlayerConnect(playerid)//callback

CpAmm[playerid][0] = CreateDynamicCP(296.9141,-38.5124,1001.5156Float:sizeworldid = -1interiorid 1playerid = -1Float:streamdistance 100.0);// robimy tylko jeden checkpoint i przypisujemy go do dwuwymiarowej tablicy

public OnPlayerEnterDynamicCP(playeridcheckpointid){//callback checkpoint?w
if(checkpointid == CpAmm[playerid][0]){
ShowPlayerDialog(playerid0DIALOG_STYLE_LIST"Ammunation Shop""Deagle \nM4 \nAK-47 \nShotgun.""Kup""Anuluj");
return ;1
}
return ;1
}


Float- liczba zmienno przecinkowa
Float:size- zmienna z przecinkiem okre?laj?ca wielko?? checkpointu - ja bym u?y? 1.5

interior oznacza interior w kt?rym b?dzie widoczny marker domy?lnie jest na -1 czyli jest widoczny we wszystkich interiorach

Tak, tak dzi?ki za wy?apanie b??du, oczywi?cie ma by? #include <streamer>

Podpis


Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-11-05, 15:59


bnscs







Wiek: 39
Na forum: 4609 dni
Posty: 15

Piwa: 1

Respekt: 56

Poprawi?em jeszcze returny bo by? w nich ma?y b??d tzw.
Kod:

return ;1


Ustawi?em Float:size tak jak proponowa?e? .

Kod:

#include <a_samp>
#include <streamer>

new CpAmm[MAX_PLAYERS][3];//ilo?? checkpoint?w

public OnPlayerConnect(playerid)//callback

CpAmm[playerid][0] = CreateDynamicCP(296.9141,-38.5124,1001.5156, Float:1.5 , worldid = -1, interiorid = 1, playerid = -1, Float:streamdistance = 100.0);// robimy tylko jeden checkpoint i przypisujemy go do dwuwymiarowej tablicy

public OnPlayerEnterDynamicCP(playerid, checkpointid){//callback checkpoint?w
if(checkpointid == CpAmm[playerid][0]){
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_LIST, "Ammunation Shop", "Deagle \nM4 \nAK-47 \nShotgun.", "Kup", "Anuluj");
return 1;
}
return 1;
}


Lecz nie za bardzo rozumiem co z tym
Kod:

worldid = -1, interiorid = 1, playerid = -1, Float:streamdistance = 100.


Lec? pifka ;)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2013-11-05, 16:21


ekicam2

KISS






Wiek: 28
Na forum: 5602 dni
Posty: 31
Nick w MP: ekicam2

Piwa: 11

Respekt: 50

worldid- id virtualnego ?wiata w kt?rym b?dzie widoczny marker( w sampie jest do wyboru kilka tysi?cy VW)
ineriorid- id interioru w kt?rym b?dzie widoczny checkpoint
playerid- dla kogo b?dzie widoczny marker
streamdistance- odleg?o?? na kt?r? marker b?dzie wida?- ja mam co? z serwerem na widnowsa nie tka i mi tego nei interpretuje wi?c nie podpowiem jak to ustawi? ;P

Pawn

new CpAmm[3];
CMD:amm(playeridparams[]){
    SetPlayerInterior(playerid,1);
    SetPlayerPos(playerid,286.148986,-40.644397,1001.515625);
    SendClientMessage(playerid,0xFFFFF,"Zosta?e? przeteleportowany do ammunation, ?yczymy mi?ego dnia.");
    return 1;
}
CpAmm[0] = CreateDynamicCP(295.7926,-38.5145,1001.5156);

public OnPlayerEnterDynamicCP(playeridcheckpointid){
if(checkpointid <= CpAmm[sizeof(CP[])]){
ShowPlayerDialog(playerid0DIALOG_STYLE_LIST"Ammunation Shop""Deagle \nM4 \nAK-47 \nShotgun.""Kup""Anuluj");
return 1;
}


Podpis


Postaw piwo autorowi tego posta
 

 
Tagi: bank :: amp :: ammunition
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN » [DM] Bank & Ammunition 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