[Pomoc] pucanje iz vozila.

Započeo Otisao s Foruma!, Mart 03, 2012, 00:49:46 PRE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: FG
Detaljan opis problema: kako da napravim da se nemoze pucat iz vozila ako npr igrac drzi oruzje i udje u kola da mu samo prebaci na sake da nemoze pucat isto tako i za motor da nemoze.. :)
Dio skripte: //
Poslednja Izmena: Mart 03, 2012, 01:13:40 PRE PODNE od ¢fg™'87
[[/center]
DgL <3
Otisao s Foruma zz


new GunSlot[5]; //povecaj ukoliko ti treba... (mislim da igrac nece nositi vise od 4 oruzja na RP serveru...)

OnPlayerEnterVehicle dodaj:


// neka GunSlot[1] sluzi za pistolje, GunSlot[2] za mp5, GunSlot[3] za ak47/m4 i GunSlot[4] za Shotgun (ostalim gunovima ne mozes pucati ja mslm iz auta

if(GetPlayerWeapon(playerid) == 24) { GunSlot[1] = 24; } //za eagle
if(GetPlayerWeapon(playerid) == 22) { GunSlot[1] = 22; } //za clot
if(GetPlayerWeapon(playerid) == 23) { GunSlot[1] = 23; } //za scilenced pistol
if(GetPlayerWeapon(playerid) == 29) { GunSlot[2] = 29; } //za mp5
if(GetPlayerWeapon(playerid) == 30) { GunSlot[3] = 30; } //za ak47
if(GetPlayerWeapon(playerid) == 31) { GunSlot[3] = 31; } //za m4
if(GetPlayerWeapon(playerid) == 25) { GunSlot[4] = 25; } //za shotgun
ResetPlayerWeapons(playerid);

//dodaj proveru za jos koje oruzje ako hoces


pod OnPlayerExitVehicle


GivePlayerWeapon(playerid, GunSlot[1], 100); // dace igracu 100 metaka za eagle/clot/scilenced pistol
GivePlayerWeapon(playerid, GunSlot[2], 150); // dace igracu 150 metaka za mp5
GivePlayerWeapon(playerid, GunSlot[3], 300); // dace igracu 300 metaka za ak47/m4
GivePlayerWeapon(playerid, GunSlot[4], 50); // dace igracu 50 metaka za shotgun


e sad ukoliko hoces da napravis proveru i za municiju to ces morati sam hehe :)

koristi


GetPlayerWeaponData


ja sam ti dao sistem i pocetni kod a ti ga usavrsi hehe :) (btw dobra ti je ideja za ovo ;))
Poslednja Izmena: Mart 03, 2012, 01:19:56 PRE PODNE od dock

radi ali dobije gun i nevrati metke sto sam imao heheh samo ako npr potrosim vrati na isto.  :)
[[/center]
DgL <3
Otisao s Foruma zz


new GunSlot[5]; //povecaj ukoliko ti treba... (mislim da igrac nece nositi vise od 4 oruzja na RP serveru...)
new GunAmmo[5]; // za metke

OnPlayerEnterVehicle dodaj:


// neka GunSlot[1] sluzi za pistolje, GunSlot[2] za mp5, GunSlot[3] za ak47/m4 i GunSlot[4] za Shotgun (ostalim gunovima ne mozes pucati ja mslm iz auta

new ammo;
if(GetPlayerWeapon(playerid) == 24) { GetPlayerWeaponData(playerid, 2, 24, ammo); GunSlot[1] = 24; GunAmmo[1] = ammo; } //za eagle
if(GetPlayerWeapon(playerid) == 22) { GetPlayerWeaponData(playerid, 2, 22, ammo); GunSlot[1] = 22; GunAmmo[1] = ammo; } //za clot
if(GetPlayerWeapon(playerid) == 23) { GetPlayerWeaponData(playerid, 2, 23, ammo); GunSlot[1] = 23; GunAmmo[1] = ammo; } //za scilenced pistol
if(GetPlayerWeapon(playerid) == 29) { GetPlayerWeaponData(playerid, 4, 29, ammo); GunSlot[2] = 29; GunAmmo[2] = ammo; } //za mp5
if(GetPlayerWeapon(playerid) == 30) { GetPlayerWeaponData(playerid, 5, 30, ammo); GunSlot[3] = 30; GunAmmo[3] = ammo; } //za ak47
if(GetPlayerWeapon(playerid) == 31) { GetPlayerWeaponData(playerid, 5, 31, ammo); GunSlot[3] = 31; GunAmmo[3] = ammo; } //za m4
if(GetPlayerWeapon(playerid) == 25) { GetPlayerWeaponData(playerid, 3, 25, ammo); GunSlot[4] = 25; GunAmmo[4] = ammo; } //za shotgun
ResetPlayerWeapons(playerid);

//dodaj proveru za jos koje oruzje ako hoces


Da ti pojasnim malo ovaj GetPlayerWeaponData, funkcionise ovako:


GetPlayerWeaponData(playerid, slot, weaponid, ammo);


znaci ovaj prvi broj posle playerid je SLOT oruzja mozes ga naci ovde: http://wiki.sa-mp.com/wiki/Weapons pod SLOT
drugi broj je ID oruzja, na istom linku ga mozes naci pod ID

pod OnPlayerExitVehicle


GivePlayerWeapon(playerid, GunSlot[1], GunAmmo[1]);
GivePlayerWeapon(playerid, GunSlot[2], GunAmmo[2]);
GivePlayerWeapon(playerid, GunSlot[3], GunAmmo[3]);
GivePlayerWeapon(playerid, GunSlot[4], GunAmmo[4]);


Nez dal ce raditi, ali pokusaj hehe :)
Poslednja Izmena: Mart 03, 2012, 01:45:06 PRE PODNE od dock

kad sam ubacio izbaci mi ovo  :(

C:\Documents and Settings\kk\Desktop\roleP\gamemodes\sarajevo.pwn(2509) : error 035: argument type mismatch (argument 3)
C:\Documents and Settings\kk\Desktop\roleP\gamemodes\sarajevo.pwn(2510) : error 035: argument type mismatch (argument 3)
C:\Documents and Settings\kk\Desktop\roleP\gamemodes\sarajevo.pwn(2511) : error 035: argument type mismatch (argument 3)
C:\Documents and Settings\kk\Desktop\roleP\gamemodes\sarajevo.pwn(2512) : error 035: argument type mismatch (argument 3)
C:\Documents and Settings\kk\Desktop\roleP\gamemodes\sarajevo.pwn(2513) : error 035: argument type mismatch (argument 3)
C:\Documents and Settings\kk\Desktop\roleP\gamemodes\sarajevo.pwn(2514) : error 035: argument type mismatch (argument 3)
C:\Documents and Settings\kk\Desktop\roleP\gamemodes\sarajevo.pwn(2515) : error 035: argument type mismatch (argument 3)


To su ove linije

if(GetPlayerWeapon(playerid) == 24) { GetPlayerWeaponData(playerid, slot, 24, ammo); GunSlot[1] = 24; GunAmmo[1] = ammo; } //za eagle
if(GetPlayerWeapon(playerid) == 22) { GetPlayerWeaponData(playerid, slot, 22, ammo); GunSlot[1] = 22; GunAmmo[1] = ammo; } //za clot
if(GetPlayerWeapon(playerid) == 23) { GetPlayerWeaponData(playerid, slot, 23, ammo); GunSlot[1] = 23; GunAmmo[1] = ammo; } //za scilenced pistol
if(GetPlayerWeapon(playerid) == 29) { GetPlayerWeaponData(playerid, slot, 29, ammo); GunSlot[2] = 29; GunAmmo[2] = ammo; } //za mp5
if(GetPlayerWeapon(playerid) == 30) { GetPlayerWeaponData(playerid, slot, 30, ammo); GunSlot[3] = 30; GunAmmo[3] = ammo; } //za ak47
if(GetPlayerWeapon(playerid) == 31) { GetPlayerWeaponData(playerid, slot, 31, ammo); GunSlot[3] = 31; GunAmmo[3] = ammo; } //za m4
if(GetPlayerWeapon(playerid) == 25) { GetPlayerWeaponData(playerid, slot, 25, ammo); GunSlot[4] = 25; GunAmmo[4] = ammo; } //za shotgun
Poslednja Izmena: Mart 03, 2012, 01:54:36 PRE PODNE od ¢fg™'87
[[/center]
DgL <3
Otisao s Foruma zz


Da da, testirao sam i video gde je problem, evo napravio sam jednu FS sa tom funkcijom pa ili prekopiraj odatle ili koristi FS :)

a ovo sto si ubacio pre toga obrisi, evo upravo sam je testirao i koliko mi se cini radi hehe :D

http://balkan-samp.com/forum/index.php?topic=39607.0

Eto uzivaj :D
Poslednja Izmena: Mart 03, 2012, 02:04:00 PRE PODNE od dock

Brate npr ja imam dgl i kalas i ja ispucam kalas znaci imam samo dgl i ja udjem u kola i opet izadjem i opet imam kalas a potrosio sam ga heheh.  :P
[[/center]
DgL <3
Otisao s Foruma zz


Citat: ¢fgâ,,¢'87 poslato Mart 03, 2012, 02:11:38 PRE PODNE
Brate npr ja imam dgl i kalas i ja ispucam kalas znaci imam samo dgl i ja udjem u kola i opet izadjem i opet imam kalas a potrosio sam ga heheh.  :P

aha upravu si hehe zab sam staviti restart :)

evo novi link za download :)

http://www.mediafire.com/?wiq5cw5a52s6b0s

Jeli samo ovo stavljam u skriptu?

#endif

new GunSlot[5];
new GunAmmo[5];

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    // neka GunSlot[1] sluzi za pistolje, GunSlot[2] za mp5, GunSlot[3] za ak47/m4 i GunSlot[4] za Shotgun (ostalim gunovima ne mozes pucati ja mslm iz auta

new ammo;
if(GetPlayerWeapon(playerid) == 24) { ammo = GetPlayerAmmo(playerid); GunSlot[1] = 24; GunAmmo[1] = ammo; } //za eagle
if(GetPlayerWeapon(playerid) == 22) { ammo = GetPlayerAmmo(playerid); GunSlot[1] = 22; GunAmmo[1] = ammo; } //za clot
if(GetPlayerWeapon(playerid) == 23) { ammo = GetPlayerAmmo(playerid); GunSlot[1] = 23; GunAmmo[1] = ammo; } //za scilenced pistol
if(GetPlayerWeapon(playerid) == 29) { ammo = GetPlayerAmmo(playerid); GunSlot[2] = 29; GunAmmo[2] = ammo; } //za mp5
if(GetPlayerWeapon(playerid) == 30) { ammo = GetPlayerAmmo(playerid); GunSlot[3] = 30; GunAmmo[3] = ammo; } //za ak47
if(GetPlayerWeapon(playerid) == 31) { ammo = GetPlayerAmmo(playerid); GunSlot[3] = 31; GunAmmo[3] = ammo; } //za m4
if(GetPlayerWeapon(playerid) == 25) { ammo = GetPlayerAmmo(playerid); GunSlot[4] = 25; GunAmmo[4] = ammo; } //za shotgun
ResetPlayerWeapons(playerid);

//dodaj proveru za jos koje oruzje ako hoces
return 1;
}

public OnPlayerExitVehicle(playerid, vehicleid)
{
    GivePlayerWeapon(playerid, GunSlot[1], GunAmmo[1]);
GivePlayerWeapon(playerid, GunSlot[2], GunAmmo[2]);
GivePlayerWeapon(playerid, GunSlot[3], GunAmmo[3]);
GivePlayerWeapon(playerid, GunSlot[4], GunAmmo[4]);
GunSlot[1] = 0; GunAmmo[1] = 0;
GunSlot[2] = 0; GunAmmo[2] = 0;
GunSlot[3] = 0; GunAmmo[3] = 0;
GunSlot[4] = 0; GunAmmo[4] = 0;
return 1;
}
[[/center]
DgL <3
Otisao s Foruma zz


Citat: ¢fgâ,,¢'87 poslato Mart 03, 2012, 02:35:49 PRE PODNE
Jeli samo ovo stavljam u skriptu?

#endif

new GunSlot[5];
new GunAmmo[5];

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    // neka GunSlot[1] sluzi za pistolje, GunSlot[2] za mp5, GunSlot[3] za ak47/m4 i GunSlot[4] za Shotgun (ostalim gunovima ne mozes pucati ja mslm iz auta

new ammo;
if(GetPlayerWeapon(playerid) == 24) { ammo = GetPlayerAmmo(playerid); GunSlot[1] = 24; GunAmmo[1] = ammo; } //za eagle
if(GetPlayerWeapon(playerid) == 22) { ammo = GetPlayerAmmo(playerid); GunSlot[1] = 22; GunAmmo[1] = ammo; } //za clot
if(GetPlayerWeapon(playerid) == 23) { ammo = GetPlayerAmmo(playerid); GunSlot[1] = 23; GunAmmo[1] = ammo; } //za scilenced pistol
if(GetPlayerWeapon(playerid) == 29) { ammo = GetPlayerAmmo(playerid); GunSlot[2] = 29; GunAmmo[2] = ammo; } //za mp5
if(GetPlayerWeapon(playerid) == 30) { ammo = GetPlayerAmmo(playerid); GunSlot[3] = 30; GunAmmo[3] = ammo; } //za ak47
if(GetPlayerWeapon(playerid) == 31) { ammo = GetPlayerAmmo(playerid); GunSlot[3] = 31; GunAmmo[3] = ammo; } //za m4
if(GetPlayerWeapon(playerid) == 25) { ammo = GetPlayerAmmo(playerid); GunSlot[4] = 25; GunAmmo[4] = ammo; } //za shotgun
ResetPlayerWeapons(playerid);

//dodaj proveru za jos koje oruzje ako hoces
return 1;
}

public OnPlayerExitVehicle(playerid, vehicleid)
{
    GivePlayerWeapon(playerid, GunSlot[1], GunAmmo[1]);
GivePlayerWeapon(playerid, GunSlot[2], GunAmmo[2]);
GivePlayerWeapon(playerid, GunSlot[3], GunAmmo[3]);
GivePlayerWeapon(playerid, GunSlot[4], GunAmmo[4]);
GunSlot[1] = 0; GunAmmo[1] = 0;
GunSlot[2] = 0; GunAmmo[2] = 0;
GunSlot[3] = 0; GunAmmo[3] = 0;
GunSlot[4] = 0; GunAmmo[4] = 0;
return 1;
}


Bez #endif

i ovo sto pise u OnPlayerEnterVehicle samo to ubacis bez onplayerentervehicle i ove zadnje } isto i za OnPlayerExitVehicle...