hey, bin auf der aktuellen suche der includes gl_common und gl_spawn und vehicleutil ich habe schon geguckt und nichts gefunden
[SAMMELTHREAD] Kleine Scripting Fragen
- Rafelder
- Unerledigt
Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
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
-
-
public OnPlayerDeath(playerid, killerid, reason){ SendDeathMessage(killerid,playerid,reason); { SetPlayerScore(killerid, 1); SetPlayerScore(playerid,-1); GivePlayerMoney(killerid, 100); } return 1;}
Wenn ich mich nicht täusche funktioniert das nicht ganz richtig.
Ich will das der Killer 100$ + 1 Score bekommt.
Und das Opfer -1 Score bekommt. -
hey, bin auf der aktuellen suche der includes gl_common und gl_spawn und vehicleutil ich habe schon geguckt und nichts gefunden
die beiden gl_*** Includes findest du im aktuellen SA-MP Server Paket -
Wenn ich mich nicht täusche funktioniert das nicht ganz richtig.
Ich will das der Killer 100$ + 1 Score bekommt.
Und das Opfer -1 Score bekommt.
nimm mal das
public OnPlayerDeath(playerid, killerid, reason)
{
SendDeathMessage(killerid,playerid,reason);
SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
SetPlayerScore(playerid,GetPlayerScore(playerid)-1);
GivePlayerMoney(killerid, 100);
GivePlayerMoney(playerid, -100);
return 1;
} -
mal ganz doof kann man den befehl /skin deaktivieren und einfach ein "Der Befehl ist nicht verfügbar." senden?
-
mal ganz doof kann man den befehl /skin deaktivieren und einfach ein "Der Befehl ist nicht verfügbar." senden?
ja klar geht sowas warum sollte das nicht gehen ^^:
du kannst auch statt return 0 bei OnPlayerCommandText was anderes returnen ein text oder sonst wasfür das empfiehlt sich eine variabel:
new aktiv;
//Hier ist der command
if(aktive == 0){ //ersteabfrage}else{ return SendClientMessage(playerid,Farbe,"Dein Text");}
-
Ich möchte Autos mit einer Art Locksystem verschlossen lassen, das keine einsteigen kann.
Keinen Befehl eingeben, sondern das sie von Anfang an verschlossen sind.AddStaticVehicle(600,-1666.9943,386.4532,6.7502,260.9358,11,11); // SpawnCar1
AddStaticVehicle(598,-1614.9543,445.2065,6.7771,258.8019,0,1); // SpawnCar2
Als Beispiel die beiden Autos.
Kann mir wer weiter helfen?Lg Kazuto
-
Ist es Möglich ohne UF.inc
einen Spieler ohne ID eingabe zu Tazern ?bin schon soweit:
ocmd:tazer(playerid,params[])
{
for(new i=0; i<GetMaxPlayers(); i++)
{
if(IsPlayerConnected(i))
{
new Float:x, Float:y, Float:z, Float:Distance = 5.0;
GetPlayerPos(i,x,y,z);
if(IsPlayerInRangeOfPoint(playerid,Distance,x,y,z)
{}
}
Doch dan sind wird 2 sachen eingefallen
1. Man Kann sich so selbst Tazern
2. Wenn ich [i] Tazer dan werden ja alle Getazert oder ?das problem bei der uf.inc bekomme ich Vieller Erros...
-
Erledigt Ich möchte am Payday nun auch Fraktionslohn geben.. aber wie mache ich das?
GivePlayerMoney(playerid,GetPVarInt(playerid,"Lohn"));
oder anders?
//e + //e2:
Frage I Wie speichere ich die Konten von bestimmten Fraktionen?Frage II Ich habe beim Payday einen Lohn von einem bestimmten Job bestimmt, in meinem kleinen Payday Dialog zeigt es aber immer nur bei Einkommen eine 1 an, obwohl klar ist, dass der Lohn bei einer höheren Summe liegt.
format(Payday,sizeof(Payday),"Einkommen: %i$\nFraktionslohn: %i\nGeld: %i\nLevel: %i\nPayday-Punkte: %i/20",SetLohn(i),GetPVarInt(i,"FLohn"),GetPlayerMoney(i),GetPlayerScore(i),GetPVarInt(i,"Payday"));Frage II Wie mache ich zudem beim Payday, dass der Spieler auch soviel Geld bekommt?
GivePlayerMoney(i,SetLohn(i));oder anders?
stock SetLohn(playerid)
{
new lohn[5];
switch(GetPVarInt(playerid,"Job"))
{
case 0:{lohn="500";}
case 1:{lohn="750";}
case 2:{lohn="500";}
case 3:{lohn="500";}
case 4:{lohn="500";}
case 5:{lohn="500";}
case 6:{lohn="500";}
}
return 1;
} -
1. dini_IntSet(SpielerDatei,"Fraktion",FraktionsID)
2. return lohn; //anstatt 1
-
-
Das Geld wird ja eigentlich nun angezeigt, aber wird es einem Spieler auch beim Payday gegeben?
-
Um den Lohn zu geben musst du das etwas um aendern:
stock SetLohn(playerid)
{
new lohn=0;//Statt String machen wir nen int draus
switch(GetPVarInt(playerid,"Job"))
{
case 0:{lohn=500;} //Das " weg weil es ja kein String mehr ist.
case 1:{lohn=750;}// |=|
case 2:{lohn=500;}// |=|
case 3:{lohn=500;}// |=|
case 4:{lohn=500;}// |=|
case 5:{lohn=500;}// |=|
case 6:{lohn=500;}// |=|
}
return lohn;
}//und dann halt bei deiner PayDay Funktion:
GivePlayerMoney(playerid,SetLohn(playerid));Soe muesste es eig. gehn
-
Gut danke, das hat soweit funktioniert.. aber das mit der Fraktionskasse verstehe ich nicht wirklich.
Ich benutze keine Spielerdatei, habe auch kein enum oder sonst etwas dafür..Wie würde in einem Selfmade der Befehl für das Einzahlen aussehen?
ocmd:fkasse einzahlen(playerid,params[])
{
new fkasse;
SetPVarInt(iplayerid,"Fkasse",GetPVarInt(playerid,"Fkasse")+fkasse);
}Das ist jetzt ohne alles, einfach eine grobe Ansicht, aber wie würde es gemacht werden?
-
Also das was du oben gemacht hast ist das du die Fkasse nicht fuer die Fraktion gesetzt hast sondern fuer jeden Spieler.
Die FKasse musst du in einer Externen Datei haben.(Am besten DIni oder MySQL)
-
Ich speichere mit Dini.. aber dann musste ich es wie machen?
-
Wie kann ich einen/befehl ortsabhängig machen? also das dieser nur in einem bestimmten bereich oder Punkt funktioniert?
Muss ich das über ein PickUp machen oder geht es einfacher?
-
Wie kann ich einen/befehl ortsabhängig machen? also das dieser nur in einem bestimmten bereich oder Punkt funktioniert?Muss ich das über ein PickUp machen oder geht es einfacher?
http://wiki.sa-mp.com/wiki/IsPlayerInRangeOfPoint
http://wiki.sa-mp.com/wiki/GangZoneCreateEinfach abfragen ob er in der GangZone oder in der Range von IsPlayerInRangeOfPoint ist.
-
Danke ich wusste nicht wonach ich zu suchen habe und sorry das ich deine Frage unterbrochen habe.
-
Danke ich wusste nicht wonach ich zu suchen habe und sorry das ich deine Frage unterbrochen habe.
Kein Problem, der Thread ist nicht nur für mich da. -
Hmmm das hier löst bei mir fehler on muss aus
if(strcmp(cmdtext, "/jobcenter", true) == 0)
{
if(IsPlayerInRangeOfPoint(playerid,362.3104,173.8328,1008.3828,10))
{
ShowPlayerDialog(playerid,DIALOG_JOBCENTER_M,DIALOG_STYLE_LIST,"Arbeitsamt"," Personalausweis beantragen \n Arbeitslosengeld beantragen\n Aktuelle Stellenangebote","OK","Abbruch") ;
return 1;
} -