GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: ROOCK - 2015. Augusztus 27. - 22:57:10

Cím: Több váltotó egy néven?
Írta: ROOCK - 2015. Augusztus 27. - 22:57:10
Üdv na tehát
az lenne a problemo hogy hogyan lehetne megcsinálni azt hogy van egy változóm
 
akr[playerid][adat];

 
persze ez enummal van megoldva
na és ezt hogyan lehetne sokszorozni tehát
 

akr[playerid][adat][1];
akr[playerid][adat][2];
akr[playerid][adat][3];

 
és ezeket hogyan lehet lekérni egyszerre?
tehát ha az 1 ez az értéke akkor ezt irja ki de ha a 2nek is van értéke akkor az 1 est és a 2 est is kiirja ha a hármasnak is akk mind a 3at
próbáltam ezt for taggal de nem jutottam vele sokra
 

for(new i; i < 3; i++){
if(akr[playerid][adat] == 1){
S1 = \"adat1\";
}
if(akr[playerid][adat] == 2){
S1 = \"adat2\";
}
}

 
na erre azt irja hogy unknow command
tehát dióhélyban
playerváltozót akarok elmenteni másik változóra ami a intet leforditja stringre ezt egyszerüen átrakom egy másik változóra ami ugyan ugy növexik majd ezeket a változókat kilistázni
[gmod]Pawn kódra ügyelj.[/gmod]
Cím: Több váltotó egy néven?
Írta: Fred[HUN] - 2015. Augusztus 28. - 00:15:26
new akr[playerid][adat][amennyi legyen.]

 

new akr[playerid][adat][3]

 
és így 3x bírod használni.
1
2
3
Cím: Több váltotó egy néven?
Írta: ROOCK - 2015. Augusztus 28. - 07:36:00
Nem 4x mert igy a 0is benne van nem? De ezeket igy hogy kerem le?
Cím: Több váltotó egy néven?
Írta: Fred[HUN] - 2015. Augusztus 28. - 08:11:21
Ha a nulla is benne van akkor is csak 3x.
0, 1, 2
Csinálsz egy FOR-t ami a változó értékéig fut le, mint ha lenne egy MAX_valami
Cím: Több váltotó egy néven?
Írta: ROOCK - 2015. Augusztus 28. - 08:40:47
for(new i; i < 3;i++){
if(akr[playerid][adat]==1){
K = \"semmi\";
format(str,sizeof(str),\"%s\",K);
SendClientMessage(playerid, -1, str);
}else SendClientMessage(playerid, -1,\"nulla\");
}

 
na ez szép és jó mert elkezdett működni tegnap nem tudom mért nem ment
de most az lenne a probléma hogy ha vizsgálni akarom hogy melyik slot szabad azt hogy lehet megoldani vizsgálni kell mindet külön külön?
 
if(akr[playerid][adat][0]==0){
if(akr[playerid][adat][1]==0){
if(akr[playerid][adat][2]==0){

 
mert ha for-ral vizsgálom akkor telerakja mind a 3 at
 
for(new i; i < 3; i++){
if(akr[playerid][adat]==0){
akr[playerid][adat] = 1;
new str[128],K[3][30];
K=\"alap\";
format(str,sizeof(str),\"%s\",K);
SendClientMessage(playerid, -1, str);
}else SendClientMessage(playerid, -1,\"Csak 3 alap lehet nálad!\");
}

 
vagy csak vegyem le a fornál a berakási cuccot tehát nem i<3 hanem i<1
Cím: Több váltotó egy néven?
Írta: ROOCK - 2015. Szeptember 19. - 09:19:00
a probléma még mindig fennáll valaki esetleg?? tudna segíteni?
Cím: Több váltotó egy néven?
Írta: adamhawkz - 2015. Szeptember 19. - 09:54:26
Remélem, jól értem, amit szeretnél:
 

new str[128], K[3][30];
for(new i; i < 3; i++) {
    if(akr[playerid][adat] == 0) {
        akr[playerid][adat] = 1;
        format(K, sizeof(K), \"%s\", \"alap\");
        format(str, sizeof(str), \"%s\", K);
        SendClientMessage(playerid, -1, str);
    } else SendClientMessage(playerid, -1, \"Csak 3 alap lehet nálad!\");
}