Hallo, ich scripte gerade an einem kleinem DM-Gamemode und wollte deshalb fragen wie man die Waffen "hinterlassen" kann. Das heißt z. B. wenn man stirbt und noch eine M4 hatte, die M4 an der Position wo man gestorben ist als Pickup erscheint. (Wenn man im Singleplayer Polizisten erschießt kann man ja auch die Pistole und den Schlagstock nehmen)
Bei Tod Waffen "hinterlassen"?
- Brotfischer
- Geschlossen
- Erledigt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
http://samp.breadfish.de/wbb/i…=DownloadDBData&dataID=18
Als PickupID anstatt des Geldbündels die entsprechende Waffen-ID verwenden.
-
Ich habe hier diesen Befehl gefunden: "SetDeathDropAmount(amount);" Mit dem kann man nach dem Tod Waffenpickups hinterlassen. Aber ob ich bei amount true, false, irgendeine Zahl oder was auch immer eingebe bekomme ich diese Fehlermeldung: "C:\...\gamemodes\LSGF.pwn(299 -- 300) : error 076: syntax error in the expression, or invalid function call". Hab's bei OnGameModeInit() hingeschreiben. Was muss ich bei Amount hinschreiben?
-
vllt. bei
public OnPlayerDeath(playerid, killerid, reason)
{
retuen 1;
} -
Wenn man mal im Wiki schauen würde, was man eigentlich als aller erstes machen sollte, dann wüsste man wieso es nicht funktioniert: http://wiki.sa-mp.com/wiki/SetDeathDropAmount
-
Wie macht man das denn das die waffen abgelegt werden wenn man stirbt?
//EDIT//
Bitte ich habe es so gemacht wie es da steht unter OnGameModeInet aber es geht nciht
-
kleines bisschen gedult. ich arbeite gerade dran. dürfte noch ne weile dauern ^^.
-
cool wenn dus hast könntest du mir dann die zeile (zeilen) schiken?
-
okay also hier haste es:
// Ganz oben Hin:
new WaffePickup[212]; // Hier bekommt das Pickup seine eigene ID
new Waffe[212][2]; // Hier bekommt die fallen gelassene Waffe die ID und die Munition
// Die jeweilige ID setzt sich aus der Playerid + Waffenslot zusammen. Daher maximal 212 (maximale spielerzahl: 200, maximale slots: 12)public OnPlayerDeath(playerid, killerid, reason)
{
new Waffen[13][2],Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
for(new i=0;i<13;i++)
{
new Pickupid;
GetPlayerWeaponData(playerid,i,Waffen[i][0],Waffen[i][1]);
if(Waffen[i][0]>=1)
{
switch(Waffen[i][0])
{
case 1:{Pickupid=331;}
case 2:{Pickupid=333;}
case 3:{Pickupid=334;}
case 4:{Pickupid=335;}
case 5:{Pickupid=336;}
case 6:{Pickupid=337;}
case 7:{Pickupid=338;}
/* ... Bitte weiterführen
http://wiki.sa-mp.com/wiki/Weapons // dementsprechende Waffenids
http://wiki.sa-mp.com/wiki/Pickup_help // dementsprechende PickupidsBeispiel: Waffen[i][0] (Waffenid) entspricht case 1 (Waffenid 1)
auf 'http://wiki.sa-mp.com/wiki/Weapons' ID 1 raussuchen, Name der Waffe merken
auf 'http://wiki.sa-mp.com/wiki/Pickup_help' mit dem namen der waffe unter der kategorie 'Waffen Pickups'
die Pickupid raussuchen und einfügen.
*/
}
switch(i)
{
case 1:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x+1,y,z);}
case 2:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x+2,y,z);}
case 3:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x+3,y,z);}
case 4:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x,y+1,z);}
case 5:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x,y+2,z);}
case 6:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x,y+3,z);}
case 7:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x-1,y,z);}
case 8:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x-2,y,z);}
case 9:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x-3,y,z);}
case 10:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x,y-1,z);}
case 11:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x,y-2,z);}
case 12:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x,y-3,z);}
}
Waffe[playerid+i][0]=Waffen[i][0];
Waffe[playerid+i][1]=Waffen[i][1];
}
}
return 1;
}public OnPlayerPickUpPickup(playerid, pickupid)
{
for(new i=0;i<212;i++) // schaut ob der spieler in einem der fallengelassenen Pickups steht
{
if(pickupid==WaffePickup[i])
{
GivePlayerWeapon(playerid, Waffe[i][0], Waffe[i][1]); // Gibt dem Spieler der die Waffe aufnimmt die Waffe + Muni
DestroyPickup(WaffePickup[i]]); // Löscht sicherheitshalber nocheinmal den Pickup um ein respawn zu vermeiden
}
}
return 1;
}Sollte eigendlich alles klappen. Wenn es probleme gibt einfach hier melden.
Sooo...
und nun zu meiner Bezahlung. Tu mir nur 1 gefallen.
Merk dir BITTE meinen Namen!!! *flüster* so werde ich irgendwann berühmtMfG
OnlinePsycho -
kann na das mit allen waffen ids machen wenn man stirbt so wie der berümte partyserver ?
-
-
wie gesagt du musst das case weiterführen
-
das mit "Beispiel: Waffen[0] (Waffenid) entspricht case 1 (Waffenid 1)
auf 'http://wiki.sa-mp.com/wiki/Weapons' ID 1 raussuchen, Name der Waffe merken
auf 'http://wiki.sa-mp.com/wiki/Pickup_help' mit dem namen der waffe unter der kategorie 'Waffen Pickups'
die Pickupid raussuchen und einfügen." habe ich nciht verstanden ..//EDIT//
habs mal getestet, und geht auch soweit, nur der legt mich falsche waffen dahin .. warum ?
-
Poste mal den Code, bitte.
-
cool ich wolte des auch ma machen
-
new WaffePickup[212]; // Hier bekommt das Pickup seine eigene ID
new Waffe[212][2]; // Hier bekommt die fallen gelassene Waffe die ID und die Munition// onplayerdeath
//-----(waffe hinterlassen)---------------------------------------------------//
new Waffen[13][2],Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
for(new i=0;i<13;i++)
{
new Pickupid;
GetPlayerWeaponData(playerid,i,Waffen[i][0],Waffen[i][1]);
if(Waffen[i][0]>=1)
{
switch(Waffen[i][0])
{
case 1:{Pickupid=321;}
case 2:{Pickupid=322;}
case 3:{Pickupid=323;}
case 4:{Pickupid=324;}
case 5:{Pickupid=325;}
case 6:{Pickupid=326;}
case 7:{Pickupid=330;}
case 8:{Pickupid=331;}
case 9:{Pickupid=333;}}
/* ... uswhttp://wiki.sa-mp.com/wiki/Weapons // dementsprechende Waffenids
http://wiki.sa-mp.com/wiki/Pickup_help // dementsprechende PickupidsBeispiel: Waffen[i][0] (Waffenid) entspricht case 1 (Waffenid 1)
auf 'http://wiki.sa-mp.com/wiki/Weapons' ID 1 raussuchen, Name der Waffe merken
auf 'http://wiki.sa-mp.com/wiki/Pickup_help' mit dem namen der waffe unter der kategorie 'Waffen Pickups'
die Pickupid raussuchen und einfügen.
*/
switch(i)
{
case 1:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x+1,y,z);}
case 2:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x+2,y,z);}
case 3:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x+3,y,z);}
case 4:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x,y+1,z);}
case 5:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x,y+2,z);}
case 6:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x,y+3,z);}
case 7:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x-1,y,z);}
case 8:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x-2,y,z);}
case 9:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x-3,y,z);}
case 10:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x,y-1,z);}
case 11:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x,y-2,z);}
case 12:{WaffePickup[playerid+i]=CreatePickup(Pickupid,22,x,y-3,z);}
}
// Waffe[playerid+i][0]=Waffen[i][0];
// Waffe[playerid+i][1]=Waffen[i][1];
}
}// onplayerpickuppickup
//-----(waffe hinterlassen)---------------------------------------------------//
for(new i=0;i<212;i++) // schaut ob der spieler in einem der fallengelassenen Pickups steht
{
if(pickupid==WaffePickup[i])
{
GivePlayerWeapon(playerid, Waffe[i][0], Waffe[i][1]); // Gibt dem Spieler der die Waffe aufnimmt die Waffe + Muni
DestroyPickup(WaffePickup[i]); // Löscht sicherheitshalber nocheinmal den Pickup um ein respawn zu vermeiden
}
}mehr habe ich nicht, aber der legt immer ganz falsche waffen dahin
-
also bei mir klappts so weit eigendlich. wo ran liegt dein problem denn? was lasst er falsch fallen?
-
OnlinePsycho, ich probier das Teil irgendwann mal aus und wenns klappt kommst du dick in die Credits!
-
=D cool ^^. wenns probleme gibt: xfire = psychoonline oder pn an mich
-
wenn ich z.B. eine desert auf der hand habe, und ich sterbe, dann lässt er rocketlauncher spray dose usw. fallen
-
breadfish.de
Hat das Thema geschlossen.