Hey wie mach ich so das ich etwas in Samp abspielen kann?
Beiträge von WhiteWay
-
-
ist da kein /stats oder so dabei :P?
-
Verstehe ich das richtig?
Du möchtest es also so haben das wenn der Taxifahrer /taxifahrt PREIS eingibt,
und dann wenn ein anderer Spieler als Beifahrer einsteigen tut soll alle 10Sek der PREIS vom Taxifahrer abgezogen werden,
und auf die Hand des Taxifahrers gezahlt werden?
Genau -
Hey,
also ich habe eine Frage
Es ist so: Wie kann ich machen das wenn man mit dem Befehl /TaxiFahrt einen Preis angeben muss wie /Taxifahrt 50 Sodass es bei 10 Sekunden 50 Dollar Kostet und bei 20 Sekunden 100.. usw
Wie geht sowas Danke im Vorraus -
Da wo der Spieler den Pannendienst ruft:
PCall[playerid] = 1;
Nun ist es soocmd:pannenruf_akzept(playerid,params[])
{
new pID;
if(sscanf(params,"u",pID)) return SendClientMessage(playerid, ROT, "/pannenruf_akzept [ID / Name]");
if(PCall[pID] != 1) return SendClientMessage(playerid, ROT, "Der Spieler hat niemanden gerufen!");
if(AcceptP[playerid] != 999) return SendClientMessage(playerid, ROT, "Du hast bereits einen Auftrag");
PCall[pID] = 2;
AcceptP[playerid] = pID;
return 1;
}
Und der Ruf für den Pannendienst
if(IsPlayerInFrac(playerid,4))
{
new playername[MAX_PLAYER_NAME], string[84];
GetPlayerName(playerid, playername, sizeof(playername));
format(string, sizeof(string), "*User [%i] %s hat den Pannendienst gerufen '/pannenruf_akzept'!", playerid, playername);
SendClientMessage(playerid, 0xFF0000FF, string);
PCall[playerid] = 1;
}
Aber nur wenn ich '/pannenruf_akzept WhiteWay' mache kommt 'Du hast bereits einen Auftrag?!?!' -
Was nichts ? ... Send mir doch mal den ganzen code deines Pannendienst systems... dann kann ich dir auch schneller helfen
anstatt jetzt hier über 3 Seiten rum zu buckeln ...
Der Befehl...
ocmd:pannenruf_akzept(playerid,params[])
{
new pID;
if(sscanf(params,"u",pID)) return SendClientMessage(playerid, ROT, "/pannenruf_akzept [ID / Name]");
if(PCall[pID] != 1) return SendClientMessage(playerid, ROT, "Der Spieler hat niemanden gerufen!");
if(AcceptP[playerid] != 999) return SendClientMessage(playerid, ROT, "Du hast bereits einen Auftrag");
PCall[pID] = 1;
AcceptP[playerid] = pID;
return 1;
}
Oh ja und die Liste
if(dialogid == DIALOG_SERVICE)//Service
{
if(response == 1)
{
switch (listitem)
//Pannen Dienst
{
case 0:
{
if(IsPlayerInFrac(playerid,4))
{
new playername[MAX_PLAYER_NAME], string[84];
GetPlayerName(playerid, playername, sizeof(playername));
format(string, sizeof(string), "*User [%i] %s hat den Pannendienst gerufen '/pannenruf_akzept'!", playerid, playername);
SendClientMessage(playerid, 0xFF0000FF, string);
}
}
case 1://Taxi
{
if(IsPlayerInFrac(playerid,6))
{
new playername[MAX_PLAYER_NAME], string[84];
GetPlayerName(playerid, playername, sizeof(playername));
format(string, sizeof(string), "*User [%i] %s hat einen Taxi Fahrer gerufen Akzeptiere mit '/taxi_akzept'", playerid, playername);
SendClientMessage(playerid, 0xFF0000FF, string);
}
}
}
}
} -
DAnköö
-
Hey,
folgendes problem also ich habe das http://www.imagebanana.com/view/xavnqxx0/samp088.png
und dann wenn ich /auf mache passiert das http://www.imagebanana.com/view/36gfys54/samp092.png
if(IsPlayerInFrac(playerid, 6))//TAXI 1
{
new string[250];
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid,sendername,sizeof(sendername));
if(IsPlayerInRangeOfPoint(playerid,10.0,997.48669, 1755.41431, 11.31199)|| IsPlayerInRangeOfPoint(playerid,10.0,997.48669, 1755.41431, 11.31199))
{
if(TaxiHangvar == 0)
{
MoveObject(TaxiHang, 997.60284, 1758.15100, 13.56017, -67.56002, 0.84000, 0.00000, 1);
format(string, sizeof(string), "* Fahrer %s öffnet mit der Fenbedienung das Tor", sendername);
SpielerinnaeheText(30.0, playerid, string, LILA,LILA,LILA,LILA,LILA);
TaxiHangvar = 1;
}
else if(TaxiHangvar == 1)
{
MoveObject(TaxiHang, 997.48669, 1755.41431, 11.31199, 1);
format(string, sizeof(string), "* Fahrer %s schliesst mit der Fernbedienung das Tor", sendername);
SpielerinnaeheText(30.0, playerid, string, LILA,LILA,LILA,LILA,LILA);
TaxiHangvar = 0;
}
}
else
{
SendClientMessage(playerid,GRAU,"Du bist in keiner nähe eines Tores.");
} -
Setz den Wert mal auf 1 -.-
Nope Nichts -
PCall[pID] = 2;
ist es doch auch schon dort auf 2 aber klappt immernoch net -
PCall[pID] = 2;
Wohin damit? xD -
Hä welchen wert auf 2? -
//EDIT² Aber nun klappt es doch ein problem da steht immer "Dieser Spieler hat keinen PannenDienst Gerufen
Ich Zitiere mich selbst falls du es nicht gesehen hast -
nach einer abfrage kein ;
if(sscanf(params,"u",pID)) return SendClientMessage(playerid, ROT, "/pannenruf_akzept [ID / Name]")
(11115) : error 001: expected token: ";", but found "if"
(11116) : error 001: expected token: ";", but found "if"
Ja dann Bekomm ich das xDD//EDIT der fehler wurd entdeckt
//EDIT² Aber nun klappt es doch ein problem da steht immer "Dieser Spieler hat keinen PannenDienst Gerufen
-
Bsp:
new PCall[MAX_PLAYERS];
new AcceptP[MAX_PLAYERS];
ocmd:pannenruf_akzept(playerid,params[])
{
new pID
if(sscanf(params,"u",pID)) return SendClientMessage(playerid, color, "/pannenruf_akzept [ID / Name]");
if(PCall[pID] != 1) return SendClientMessage(playerid, color, "Der Spieler hat niemanden gerufen!");
if(AcceptP[playerid] != 999) return SendClientMessage(playerid, color, "Du hast bereits einen Auftrag");
PCall[pID] = 2;
AcceptP[playerid] = pID;
return 1;
}Ich würde 2 Arrays machen, welche den jeweiligen Zustand mit den einzelnen Werten abfragt.
Wobei hier, PCall für den Spieler, der vorher gerufen hat steht, welches man zum Spam schutz,
und beim Logout verwenden kann (Damit der Mechaniker oder was weiß ich auch eine Nachricht kriegt, dass sein Kunde weg ist).
AcceptP übernimmt die pID, das heißt die ID von dem Kunden, welcher Hilfe braucht.
Dann setzten wir PCall für den Kunden auf 2, damit er sieht, dass ein Spieler unterwegs ist.
-> Nicht vergessen: Beim Login sollte AcceptP immer auf 999 gemacht werden! (Nicht auf 0, da es die playerid ja auch gibt).L.G.
heyho//edit:
new Float:Pos[3];
GetPlayerPos(anrufer,Pos[0],Pos[1],Pos[2]);
SetPlayerCheckpoint(playerid, Pos[0],Pos[1],Pos[2], 3.0);Index größe von 2 auf 3 ändern
Also Bei dir Bekomm ich (11115) : error 001: expected token: ";", but found "if"
if(sscanf(params,"u",pID)) return SendClientMessage(playerid, ROT, "/pannenruf_akzept [ID / Name]");
-
new anrufer;
Äh Öh Üh
C:\Users\ZENSIERT\Desktop\ZENSIERT\ZENSIERT\gamemodes\ZENSIERT.pwn(11115) : error 032: array index out of bounds (variable "Pos")
C:\Users\ZENSIERT\Desktop\ZENSIERT\ZENSIERT\gamemodes\ZENSIERT.pwn(11116) : error 032: array index out of bounds (variable "Pos")
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase2 Errors.
-
Also wie erstens der Befehl PannenRuf Akzept gebaut sein soll und dann noch ein Marker kommen soll?
// EDIT ocmd:pannenruf_akzept(playerid,params[])
{
if(phvar == 1)
{
//Was Soll hier rein?
}
} -
Und damit der marker kommt, einen checkpoint
http://wiki.sa-mp.com/wiki/Function:SetPlayerCheckpoint
Mhmmm das mit dem Marker check ich net ganz -
lol jetz Stürzt einfach so mein Pawno ab wenn ich Compile??
// Edit Geht wieder
-
Also, du machst den service, also anrufen oder kp^^
Falls er angerufen hat, setzt du eine variable auf 1.
Beim annehmen befehl, fragst du ab ob die vari auf 1 ist, falls ja, ist ein anruf reingekommen.
Dann kommt das, was bei der annahme noch kommen soll.
Ja ok und aber wie setze ich dann ein Red Marker auf ihn?