wie mache ich den /dmstop cmd erst wenn man den eingibt kommt man wieder zum start platzt!(wenn man ihn nicht eingibt den kommt man immer wieder zur dm zone !)
MFG
Verden1995
wie mache ich den /dmstop cmd erst wenn man den eingibt kommt man wieder zum start platzt!(wenn man ihn nicht eingibt den kommt man immer wieder zur dm zone !)
MFG
Verden1995
hat keiner ne antwort
Schau unter OnPlayerEnterCommand und gib dort
SetPlayerPos
mit den richtigen Koordinaten ein, fertig....
(Falls du das meinst)
OnPlayerEnterCommand habe ich net!
Ich meine das so wenn man zb in der /dm1 ist und man stirbt wird man automatisch zur dm1 gespawnt und wenn man /dmstop macht ist man wieder da wo man vorher war also bei /home!
Bitte schreibt schnell zurück es ist wichtig
if(cmdtext, "/dmstop", true) == 0)
{
if(isindm[playerid]==1) //Halt deine DM-Variable
{
isindm[playerid]=0;
SetPlayerHealth(playerid,0.0);
//CLientmessage: du bist ausem DM gegeangen
} else { //Wenn er nicht im DM ist
//ClientMessage: du bist nicht im DM!
}
return 1;
}
Das ganze musst du anpassen und unter OnPlayerCommandText(playerd, cmdtext[]) setzen
ja und wie geht das wenn er in der dm stirbt das er wieder in die dm kommt
public OnPlayerDeath(playerid)
{
if(isindm[playerid] == 1)
{
SetPlayerPos(playerid,x,y,z);
}
return 1;
}
könnt ihr nicht so ne filterscript bitte posten ??
Ein FS POSTEN ????
oben:
new IsInDM[MAX_PLAYERS] = 0;
OnPlayerSpawn:
if(IsInDM[playerid]==1)
{
SetPlayerPos(playerid, dmx, dmy, dmz);
SetPlayerFacingAngle(playerid, dmz); // Muss nicht sein
}
OnPlayerCommandText:
if(strcmp(cmdtext, "/dm1", true) == 0)
{
if(IsInDM[playerid]==1) return SendClientMessage(playerid, ROT, "*** Du bist bereits im DM!");
SetPlayerPos(playerid,dmx,dmy,dmz);
SetPlayerFacingAngle(playerid, dma); //MUss nicht sein
return 1;
}
if(strcmp(cmdtext, "/dmoff", true) == 0)
{
if(IsInDM[playerid] == 0) return SendClientMessage(playerid, ROT, "*** Du bist nicht im DM!");
SetPlayerHealth(playerid, 0);
return 1;
}
OnPlayerConnect:
IsInDM[playerid] = 0;
OnPlayerDisconnect:
IsInDM[playerid]=0;
//DELETE
Vorherige Person hats schon gespostet
new IsInDM[MAX_PLAYERS] = 0;
Wieso null?
wenn du doch bei OnPlayerConnect auf 0setzt?
getestet?
Alles anzeigenpublic OnPlayerDeath(playerid)
{
if(isindm[playerid] == 1)
{
SetPlayerPos(playerid,x,y,z);
}
return 1;
}
Das komische ist ja, dass ich das seit Wochen schon genau so habe, doch man spawned in manchen Fraktionen (gf) immer noch am normalen Platz. Bei Anderen hingegen spawned man im Dm Bereich.
hää irgendwie sieht das alles falsch aus xD srry
Getestet nicht, aber bei meinen Erfahrungen sollte das schon klappen und wenn es kleine Errors / Warnings geben sollte, solltest du genug Englisch können, um diese selbst zu enfernen oder poste sie hier.
Ist halt ne doppelte Sicherung... oder wenn ein Player disconnected und noch im DM ist.:
//Edit: oben was dazugetan
//Edit2: bei OnPlayerDeath kann man nochnicht die SetPlayerPos dazumachen, da OnPlayerDeath genau für den Moment gedacht ist, bei dem man tot umfällt.
//Edit3: Wenn das von mir oben für dich alles FALSCH aussieht, dann geh nochmals über die Tutorials für pawno/Scripten-lernen.
kannst du nicht eben eine filtescript machen und den die hier posten weil den kann ich gleich testen obs geht (kannst du natürlich auch xD)?
So: Im Anhang
SetPlayerFacingAngle(playerid, 0.000); // DM Position Angle
soll da die player pos auch hin
Hast mich ja in ICQ geaddet...
Hier eine gefixte Version des Scriptes :