Versuch es mal so :
ocmd:autopunkte(playerid,params[])
{
new pID;
new Anzahl;
new Grund[128];
new stringfsauto[128];
if(IsACop(playerid))
{
if(PlayerInfo[pID][pAutopunkte] <= 10)
{
if(sscanf(params, "uiu", pID, Anzahl, Grund))return SendClientMessage(playerid,WHITE,"Benutzung:/Autopunkte [Playerid] [Anzahl] [Grund]");
{
PlayerInfo[pID][pAutopunkte] += Anzahl;
format(stringfsauto,sizeof(stringfsauto),"Du hast dem Spieler %s %d Punkte eingetragen[Grund:%d]",SpielerName(pID),Anzahl,Grund);
SendClientMessage(playerid,WHITE,stringfsauto);
format(stringfsauto,sizeof (stringfsauto),"Officer %s hat dir %d Punkte eingetragen!Grund:%d",SpielerName(playerid),Anzahl,Grund);
SendClientMessage(pID,WHITE,stringfsauto);
return 1;
}
}
else
{
SendClientMessage(playerid,WHITE,"Du kannst maximal 10 Punkte eintragen!");
return 1;
}
}
return 1;
}
stock SpielerName(playerid)
{
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid,pname,sizeof(pname));
return pname;
}
Beiträge von Sebastian.
-
-
Probiere es mal so :
new vehicle = GetVehicleModel(GetPlayerVehicleID(playerid));
if(vehicle == 403 || vehicle == 514 || vehicle == 515 || vehicle == 552)
if(isPlayerInFrak(playerid,3))
{
if(IsTrailerAttachedToVehicle(vehicleid))
{
ShowPlayerDialog(playerid,work3,DIALOG_STYLE_LIST,"Wähle deine Route","LV Hafen - LS Hafen $5000\nSF Hafen - LV Hafen $1500\nLS Hafen - SF Hafen $2500\nSF Aufladestadion - LV Abladestation $3000\nSF Aufladestion - LV Inustriegebiet $3500\nLS Flughafen - SF Flughafen $2500\nLS Flughafen - SF Abladestation $3000\nLS Abladestation - LV Armybase $4500","Wählen","Abbrechen");
return 1;
}
else
{
SendClientMessage(playerid,ROT1,"Du musst erst einen Anhänger haben sonst kannst du keinen Job beginnen");
return 1;
}
}
else
{
ShowPlayerDialog(playerid,work3,DIALOG_STYLE_LIST,"Wähle deine Route","LV Hafen - LS Hafen $5000\nSF Hafen - LV Hafen $1500\nLS Hafen - SF Hafen $2500\nSF Aufladestadion - LV Abladestation $3000\nSF Aufladestion - LV Inustriegebiet $3500\nLS Flughafen - SF Flughafen $2500\nLS Flughafen - SF Abladestation $3000\nLS Abladestation - LV Armybase $4500","Wählen","Abbrechen");
return 1;
} -
Probier es mal so :
new string[128];
format(string,sizeof(string),"Hallo %s, und Willkommen auf unserem Server.\n In diesem Tutorial werden wir dir einiges über unseren Roleplay Server erklären.\nViel spaß! ", SpielerName(playerid));
ShowPlayerDialog(playerid,DIALOG_TUTORIAL1 ,DIALOG_STYLE_MSGBOX,"Tutorial",string,"Weiter",""); -
Der Streamer ist gut:
http://forum.sa-mp.com/showthr…highlight=streamer+plugin -
schreib den Befehl einfch so.. z.B:
public OnPlayerCommandText(playerid, cmdtext[])
{
return 0;
{
ocmd:setadmin(playerid,params[])
{
} -
Ocmd gehört außerhalb eines Puplics
-
Habe meinen Beitrag über dir editiert
-
Mhh.. haste dann auch 40$ auf der hand?
/edit: Wenn das nicht klappt, musste jedesmal so machen:
if(IsPlayerInRangeofPoint(....))
{
if(GetPlayerMoney(playerid) >= 40)
{
MoveObject....
...
...
}
else
{
SendClientMessage(playerid, DEINME_FARBE,"Sie haben nicht genug Geld");
}
}
else if(IsPlayerInRangeOfPoint(...))
//usw... -
So sparst du viel Zeilen.. er fragt als erstes ab, ob der jenige 40$ hat
ocmd:zoll(playerid,params[])
{
if(GetPlayerMoney(playerid) >= 40)
{
if(IsPlayerInRangeOfPoint(playerid,5.0, 1718.47000000,452.05000000,30.26000000))
{
MoveObject(zoll1, 1718.47000000,452.05000000,30.26000000-10,4); // Hier geht das Tor auf
SetTimerEx("zollzu", 1000*5, 0, "i", playerid); // Hier wird der Timer gestartet um das Tor zu schließen (im Public torzu)
GameTextForPlayer(playerid,"~r~-40 Euro~r~",3000,1);
GivePlayerMoney(playerid, -40);
}
else if(IsPlayerInRangeOfPoint(playerid,5.0, 1726.52000000,449.14000000,30.26000000)) //Tor zwei
{
MoveObject(zoll2, 1718.47000000,452.05000000,30.26000000-10,4); // Hier geht das Tor auf
SetTimerEx("zollzu2", 1000*5, 0, "i", playerid); // Hier wird der Timer gestartet um das Tor zu schließen (im Public torzu)
GameTextForPlayer(playerid,"~r~-40 Euro~r~",3000,1);
GivePlayerMoney(playerid, -40);
}
else if(IsPlayerInRangeOfPoint(playerid,5.0, 1708.26000000,455.70000000,30.26000000)) // Tor drei
{
MoveObject(zoll3, 1718.47000000,452.05000000,30.26000000-10,4); // Hier geht das Tor auf
SetTimerEx("zollzu3", 1000*5, 0, "i", playerid); // Hier wird der Timer gestartet um das Tor zu schließen (im Public torzu)
GameTextForPlayer(playerid,"~r~-40 Euro~r~",3000,1);
GivePlayerMoney(playerid, -40);
}
else if(IsPlayerInRangeOfPoint(playerid,5.0, 1700.95000000,458.17000000,30.26000000)) // Tor vier
{
MoveObject(zoll4, 1718.47000000,452.05000000,30.26000000-10,4); // Hier geht das Tor auf
SetTimerEx("zollzu4", 1000*5, 0, "i", playerid); // Hier wird der Timer gestartet um das Tor zu schließen (im Public torzu)
GameTextForPlayer(playerid,"~r~-40 Euro~r~",3000,1);
GivePlayerMoney(playerid, -40);
}
else if(IsPlayerInRangeOfPoint(playerid,5.0, 58.54000000,-1527.22000000,4.98000000)) // Tor vier
{
MoveObject(zoll5, 58.54000000,-1527.22000000,4.98000000-10,4); // Hier geht das Tor auf
SetTimerEx("zollzu5", 1000*5, 0, "i", playerid); // Hier wird der Timer gestartet um das Tor zu schließen (im Public torzu)
GameTextForPlayer(playerid,"~r~-40 Euro~r~",3000,1);
GivePlayerMoney(playerid, -40);
}
else if(IsPlayerInRangeOfPoint(playerid,5.0, 57.04000000,-1537.21000000,4.98000000)) // Tor vier
{
MoveObject(zoll6, 57.04000000,-1537.21000000,4.98000000-10,4); // Hier geht das Tor auf
SetTimerEx("zollzu6", 1000*5, 0, "i", playerid); // Hier wird der Timer gestartet um das Tor zu schließen (im Public torzu)
GameTextForPlayer(playerid,"~r~-40 Euro~r~",3000,1);
GivePlayerMoney(playerid, -40);
}
else if(IsPlayerInRangeOfPoint(playerid,5.0, 106.34000000,-1280.07000000,14.71000000)) // Tor vier
{
MoveObject(zoll7, 106.34000000,-1280.07000000,14.71000000-10,4); // Hier geht das Tor auf
SetTimerEx("zollzu7", 1000*5, 0, "i", playerid); // Hier wird der Timer gestartet um das Tor zu schließen (im Public torzu)
GameTextForPlayer(playerid,"~r~-40 Euro~r~",3000,1);
GivePlayerMoney(playerid, -40);
}
else if(IsPlayerInRangeOfPoint(playerid,5.0, 57.04000000,-1537.21000000,4.98000000)) // Tor vier
{
MoveObject(zoll8, 57.04000000,-1537.21000000,4.98000000-10,4); // Hier geht das Tor auf
SetTimerEx("zollzu8", 1000*5, 0, "i", playerid); // Hier wird der Timer gestartet um das Tor zu schließen (im Public torzu)
GameTextForPlayer(playerid,"~r~-40 Euro~r~",3000,1);
GivePlayerMoney(playerid, -40);
}
}
else
{
SendClientMessage(playerid,DEINE_FARBE,"Du hast nicht genug Geld dabei");
}
return 1;
} -
Mach das
new Float:X,FLoat:Y,Float:Z;zu das (Das "L" muss kleingeschrieben werden"
new Float:X,Float:Y,Float:Z; -
das hätte auch garnicht klappen könne, weil du "ui" bei sscanf hattest.. du brauchst kein integer(zahL) sondern nur pID .. außerdem lässt lässt du die pID sich teleportieren.. obwohl du dich ja zu pID teleportieren willst
-
Probier es mal so
dcmd_goto(playerid,params[])
{
if(Spieler[playerid][Adminlevel] >= 1)
{
new pID, string[128];
new Float:X,FLoat:Y,Float:Z;
GetPlayerPos(pID,X,Y,Z);
if(sscanf(params,"u",pID))return SendClientMessage(playerid,Orange,"Benutzung: /goto [SpielerID]");
if(IsPlayerConnected(pID))
{
format(string,sizeof(string),"%s hat sich zu ihnen geportet.",GetSpielerName(playerid));
SendClientMessage(pID,Blau,string);
SetPlayerPos(playerid,X,Y+2,Z);}
return 1;
}
else
{
SendClientMessage(playerid,Rot,"Sie haben nicht die nötigen Rechte um diesen Befehl nutzen zu können.");
return 1;
}
} -
du nimmt die falsche klammer
mach es so
if(PlayerInfo[playerid][pKMA] > 0)
{
administimdienst[playerid] = 1;
} -
Mach einfach deine aller aller letzter klammer von ")" zu "}"
//edit: bei dem /ban Befehl -
Irgendwie lässt du dir jeden Befehl machen oder?
Nunja.. ich habs jz nur in dcmd..
cmd_makeadmin(playerid,params[])
{
if(GetPVarInt(playerid,"Adminlevel") == 5)
{
new pID, rank, string[128], string2[128];
if(sscanf(params,"ui",pID,rank))return SendClientMessage(playerid,COLOR_HELLBLAU,"Benutze: /makeadmin [ID] [Rank]");
if(rank<0||rank>5)return SendClientMessage(playerid,COLOR_DUNKELROT,"Bitte einen gültigen Rang angeben.");
if(IsPlayerConnected(pID))
{
format(string,sizeof(string),"Sie haben (%d)%s auf Rank %i befördert!",pID,SpielerName(pID), rank);
SendClientMessage(playerid, COLOR_GRÜN, string);
format(string2, sizeof(string2),"Herlichen Glückwunsch! (%d)%s hat Ihnen Adminrank %i gegeben!",playerid,SpielerName(playerid), rank);
SendClientMessage(pID, COLOR_GRÜN, string2);
SetPVarInt(pID,"Adminlevel",rank);
SpielerSpeichern(pID);
}
}
return 1;
} -
Probier es mal so
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp("/startbonus",cmdtext,true)==0)
{
if(IsPlayerInRangeOfPoint(.....)) // deine koordianten
{
if(GetPlayerScore(playerid)==1)
{
SetPlayerScore(playerid,3);
GivePlayerMoney(playerid,250000);
SendClientMessage(playerid,BLAU,"Startbonus: Level 3 + 250k");
}
else
{
SendClientMessage(playerid,GRUEN,"Nur für Lv. 1 User!");
return 1;
}
}
else
{
SendClientMessage(playerid,GRUEN,"Du bist nicht beim Startbonus!");
return 1;
}
}
return 1;
} -
mit einer for schleife durch alle spieler kann man das überprüfen, ob taxifahrer onduty bzw online sind
-
Am besten guckst du dir mal von MrMonat einm Video an, wo er sehr gut erklärt, wie man einen Spieler speichert
-
Achte mal auf deine groß und Kleinschreibung
-
1. Warning = falsch eingerückt
2. Warnung = mach oben im Skript #define DIALOG_RADIO 1 //musst du anpassen