Beiträge von Martinez
-
-
ok es geht jetzt, aber der befehl spawnt immer noch nix und speichert
die datei aber als "Ca" ohne endung im Scriptfiles ordner. -
Ich hab ein Befehl ergestellt der eine schleife machen soll und überprüft ob
es die datei nicht gibt, wenn ja soll er dann den script ausführen.
Er soll es in Ordner abspeichern und wird dann vom server beim start geladen
werden.if(strcmp(cmd, "/vf", true) == 0)
{
for(new car = 0; car < 5000; car++)
{
new Autodatei[4];
format(Autodatei,sizeof(Autodatei),"/Cars/%d.ini",car);
if(!dini_Exists(Autodatei))
{
new Float:x,Float:y,Float:z,Float:ang,color1,color2;
GetPlayerFacingAngle(playerid,ang);
GetPlayerPos(playerid, x, y, z);
norecar[car] = CreateVehicle(strval(cmd),x,y,z,ang, 0, 0, -1);
PutPlayerInVehicle(playerid,norecar[car],0);
dini_Create(Autodatei);
GetVehiclePos(strval(cmd),x,y,z);
GetVehicleZAngle(GetPlayerVehicleID(playerid),ang);
dini_IntSet(Autodatei,"modelid",strval(cmd));
dini_FloatSet(Autodatei,"x",x);
dini_FloatSet(Autodatei,"y",y);
dini_FloatSet(Autodatei,"z",z);
dini_FloatSet(Autodatei,"ang",ang);
dini_IntSet(Autodatei,"color1",color1);
dini_IntSet(Autodatei,"color2",color2);
return 1;
}
}
return 1;
}und nach diesen befehl krieg ich in der "PAWN Compiler Output" die meldung
-
Das gleiche problem, es sieht so aus als würde er die Zeile Skin=1 missachten.
Wenn ers nicht speichert ist es doch logisch
Er muss beim Dissconect den Skin speichernich find es sicherer wenn er es nicht nach dem disconnecten macht.
// Immer noch nicht erledigt.
-
speichert er auch den skin beim verlassen den servers?
Nein.das solltest du manuell in der Datei nachschauen ob die "SKIN" auf 0 ist oder doch auf der korrekten Zahl.
Ja dort steht = "Skin=1" -
guck unter OnPlayerConnect nach.
-
Hallo,
Ich hab folgendes problem, wenn ich registriert wird zwar
SetPlayerSkin(playerid,femaleskins[random(3)]);
dini_IntSet(Spielerdatei,"Skin",GetPlayerSkin(playerid));
verwendet und wechselt auch den skin von cj zu den random ausgabe id,
aber wenn ich disconnecte und wieder connect und mich einlogge
spawn ich mit cj skin.Spawn Button überspringen:
if(SpielerDatenBank[playerid][sTutorial] == 1)
{
if(SpielerDatenBank[playerid][seingeloggt] == 1)
{
SetSpawnInfo(playerid,0,dini_Int(Spielerdatei,"Skin"),1243.3046,-1692.3225,16.1978,180,SpielerDatenBank[playerid][sSWaffe],SpielerDatenBank[playerid][sSWaffeAmmo],SpielerDatenBank[playerid][sSWaffe2],SpielerDatenBank[playerid][sSWaffeAmmo2],SpielerDatenBank[playerid][sSWaffe3],SpielerDatenBank[playerid][sSWaffeAmmo3]);
SpawnPlayer(playerid);//Spawnt spieler sofort ohne spawn button
SendClientMessage(playerid,0xFFB500FF,"Willkommen auf, Version 0.4");
}
}
else
{
if(SpielerDatenBank[playerid][seingeloggt] == 1)
{
ShowPlayerDialog(playerid,DIALOG_TUT_GESCHLECHT,DIALOG_STYLE_MSGBOX,"Frage","Was bist du?\n Wähle dein Geschlecht aus","Männlich","Weiblich");
SetSpawnInfo(playerid,0,dini_Int(Spielerdatei,"Skin"),330.6825, 163.6688, 1014.1875-2,280,SpielerDatenBank[playerid][sSWaffe],SpielerDatenBank[playerid][sSWaffeAmmo],SpielerDatenBank[playerid][sSWaffe2],SpielerDatenBank[playerid][sSWaffeAmmo2],SpielerDatenBank[playerid][sSWaffe3],SpielerDatenBank[playerid][sSWaffeAmmo3]);
SpawnPlayer(playerid);//Spawnt spieler sofort ohne spawn button
SetPlayerInterior(playerid, 3);//Setzt den interior
TogglePlayerControllable(playerid,0);//schaltet tastatur aus
}
}Auch wenn ich einstelle das er beim onplayerspawn setzen soll ändert sich nichts.
MFG Martinez
-
-
Hallo,
Ich hab eingestellt das sich der Spieler spawnen soll
es geht aber nicht richtig, er spawnt sich an der 0,0,0 position.
Vorher fragt aber Login system passwort ab.public OnPlayerRequestClass(playerid, classid)
{
if(SpielerDatenBank[playerid][seingeloggt] == 1)
{
SetSpawnInfo(playerid,0,SpielerDatenBank[playerid][sSkin],1243.3046,-1692.3225,16.1978,175,SpielerDatenBank[playerid][sSWaffe],SpielerDatenBank[playerid][sSWaffeAmmo],SpielerDatenBank[playerid][sSWaffe2],SpielerDatenBank[playerid][sSWaffeAmmo2],SpielerDatenBank[playerid][sSWaffe3],SpielerDatenBank[playerid][sSWaffeAmmo3]);
SpawnPlayer(playerid);//Spawnt spieler sofort ohne spawn button
SendClientMessage(playerid,0xFFB500FF,"Willkommen auf Version 0.3.");
}
return 1;
}MFG Martinez
-
Hallo Community,
Ich hab ein schweres problem beim schießen, wenn ich rechtsklick mache und meine maus nach
rechts oder links bewege ist die geschwindigkeit normal aber wenn ich
nach unten oder nach oben mache ist das so schnell das man kaum auf ein spieler schießen könnte.
Das Problem besteht auch wenn man ohne sa-mp macht.MFG Martinez
-
Jetzt komm ich nicht weiter. /:
-
Ich bekomms es einfach nicht hin.
Das mit schleife sollte doch mit
for(new i = 0; i < 211; i++)
{
if(strfind(Fahrzeugnamen[i], vname, true) != -1)
return i + 400;
}
funktionieren oder? -
Wie kann ich machen das man bei /v Fahrzeugnamen oder Fahrzeug id eingeben kann?
Beides sollte funktionieren, /v Infernus | /v 411.
Hab aus den PV1[MAX_PLAYERS] zu bool geändert. -
so ich hab das jetzt so gemacht:
//---------------------[Autos Spawnen]----------------
if(strcmp(cmd, "/v", true) == 0 || strcmp(cmd, "/vehicle", true, 8) == 0)
{
new pname[18];
GetPlayerName(playerid,pname,sizeof(pname));
printf("%s hat /vehicle eingegeben",pname);
new tmp[256];
new Float:x, Float:y, Float:z;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid,ORANGE,">> Benutzung: /vehicle [Fahrzeugname] <<");
SendClientMessage(playerid,ORANGE,"> Tippe ein Fahrzeugnamen z.b /v Infernus <");
SendClientMessage(playerid,ORANGE,"> Fahrzeuge Spawnen <");
SendClientMessage(playerid,ORANGE,"> Andere Verknüpfungen: /v, /vehicle <");
return 1;
}
//new vehicle = GetVehicleModelIDFromName(tmp);
new vehicle=strval(tmp);
if(vehicle < 400 || vehicle > 611)
{
SendClientMessage(playerid, ROT, "Diese Auto nicht gefunden");
return 1;
}
new Float:a;
GetPlayerFacingAngle(playerid, a);
GetPlayerPos(playerid, x, y, z);
if(IsPlayerInAnyVehicle(playerid) == 1)
{
GetXYInFrontOfPlayerVehicles(playerid, x, y, 8);
}
else
{
GetXYInFrontOfPlayerVehicles(playerid, x, y, 5);
}
new string[64];
if(PV1[playerid] == 0)
{
PlayerVehicle[playerid] = CreateVehicle(vehicle, x, y, z, a, -1, -1, -1);
PutPlayerInVehicle(playerid,PlayerVehicle[playerid],0);
format(string,sizeof(string),">> %s in Slot 1 gespawnt.",Fahrzeugnamen[vehicle - 400]);
SendClientMessage(playerid, 0x007800FF, string);
PV1[playerid] = 1;
}
else if(PV2[playerid] == 0)
{
PlayerVehicle2[playerid] = CreateVehicle(vehicle, x, y, z, a, -1, -1, -1);
PutPlayerInVehicle(playerid,PlayerVehicle2[playerid],0);
format(string,sizeof(string),">> %s in Slot 2 gespawnt.",Fahrzeugnamen[vehicle - 400]);
SendClientMessage(playerid, 0x007800FF, string);
PV2[playerid] = 1;
}
else if(PV3[playerid] == 0)
{
PlayerVehicle3[playerid] = CreateVehicle(vehicle, x, y, z, a, -1, -1, -1);
PutPlayerInVehicle(playerid,PlayerVehicle3[playerid],0);
format(string,sizeof(string),">> %s in Slot 3 gespawnt.",Fahrzeugnamen[vehicle - 400]);
SendClientMessage(playerid, 0x007800FF, string);
PV3[playerid] = 1;
}
else if(PV4[playerid] == 0)
{
PlayerVehicle4[playerid] = CreateVehicle(vehicle, x, y, z, a, -1, -1, -1);
PutPlayerInVehicle(playerid,PlayerVehicle4[playerid],0);
format(string,sizeof(string),">> %s in Slot 4 gespawnt.",Fahrzeugnamen[vehicle - 400]);
SendClientMessage(playerid, 0x007800FF, string);
PV4[playerid] = 1;
}
else
{
format(string,sizeof(string),">> Alle Slots sind belegt,lösche sie mit /desall oder /des [ID].");
}
return 1;
}PV1-4 hab ich jetzt global gesetzt, ich würde es gern haben das man Fahrzeugid oder fahrzeugnamen eingeben darf.
Edit; Befehl geht jetzt. -
Hallo,
Ich wollte mein spawn befehl auf dem Stuntserver ändern das man es nur begrenz hat
wenn man ein befehl eingibt steht nur "Server: Unknown Command."
Könnt ihr es Korrigieren?
if(strcmp(cmd, "/v", true) == 0 || strcmp(cmd, "/vehicle", true, 8) == 0)
{
new printkonsole[64],pname[18];
GetPlayerName(playerid,pname,sizeof(pname));
format(printkonsole,sizeof(printkonsole),"%s hat /vehicle eingegeben",pname);
printf(printkonsole);
new tmp[256];
new Float:x, Float:y, Float:z;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid,ORANGE,">> Benutzung: /vehicle [Fahrzeugname] <<");
SendClientMessage(playerid,ORANGE,"> Tippe ein Fahrzeugnamen z.b /v Infernus <");
SendClientMessage(playerid,ORANGE,"> Fahrzeuge Spawnen <");
SendClientMessage(playerid,ORANGE,"> Andere Verknüpfungen: /v, /vehicle <");
return 1;
}
new vehicle = GetVehicleModelIDFromName(tmp);
if(vehicle < 400 || vehicle > 611)
{
SendClientMessage(playerid, ROT, "Diese Auto nicht gefunden");
return 1;
}
new Float:a;
GetPlayerFacingAngle(playerid, a);
GetPlayerPos(playerid, x, y, z);
if(IsPlayerInAnyVehicle(playerid) == 1)
{
GetXYInFrontOfPlayerVehicles(playerid, x, y, 8);
}
else
{
GetXYInFrontOfPlayerVehicles(playerid, x, y, 5);
}
new PV1[MAX_PLAYERS] = 0,PV2[MAX_PLAYERS] = 0,PV3[MAX_PLAYERS] = 0,PV4[MAX_PLAYERS] = 0,PlayerVehicle[MAX_PLAYERS],PlayerVehicle2[MAX_PLAYERS],PlayerVehicle3[MAX_PLAYERS],PlayerVehicle4[MAX_PLAYERS];
new string[64];
if(PV1[playerid] == 0)
{
PlayerVehicle[playerid] = CreateVehicle(vehicle, x, y, z, a, -1, -1, -1);
PutPlayerInVehicle(playerid,PlayerVehicle[playerid],0);
format(string,sizeof(string),">> %s in Slot 1 gespawnt.",Fahrzeugnamen[vehicle - 400]);
SendClientMessage(playerid, 0x007800FF, string);
PV1[playerid] = 1;
if(PV2[playerid] == 0)
{
PlayerVehicle2[playerid] = CreateVehicle(vehicle, x, y, z, a, -1, -1, -1);
PutPlayerInVehicle(playerid,PlayerVehicle2[playerid],0);
format(string,sizeof(string),">> %s in Slot 2 gespawnt.",Fahrzeugnamen[vehicle - 400]);
SendClientMessage(playerid, 0x007800FF, string);
PV2[playerid] = 1;
if(PV3[playerid] == 0)
{
PlayerVehicle3[playerid] = CreateVehicle(vehicle, x, y, z, a, -1, -1, -1);
PutPlayerInVehicle(playerid,PlayerVehicle3[playerid],0);
format(string,sizeof(string),">> %s in Slot 3 gespawnt.",Fahrzeugnamen[vehicle - 400]);
SendClientMessage(playerid, 0x007800FF, string);
PV3[playerid] = 1;
if(PV4[playerid] == 0)
{
PlayerVehicle4[playerid] = CreateVehicle(vehicle, x, y, z, a, -1, -1, -1);
PutPlayerInVehicle(playerid,PlayerVehicle4[playerid],0);
format(string,sizeof(string),">> %s in Slot 4 gespawnt.",Fahrzeugnamen[vehicle - 400]);
SendClientMessage(playerid, 0x007800FF, string);
PV4[playerid] = 1;
}
else
{
format(string,sizeof(string),">> Alle Slots sind belegt,lösche sie mit /delall oder /del [ID].");
}
}
else
{
format(string,sizeof(string),">> Alle Slots sind belegt,lösche sie mit /delall oder /del [ID].");
}
}
else
{
format(string,sizeof(string),">> Alle Slots sind belegt,lösche sie mit /delall oder /del [ID].");
}
}
else
{
format(string,sizeof(string),">> Alle Slots sind belegt,lösche sie mit /delall oder /del [ID].");
}
return 1;
}MFG Martinez
-
@BlackAce
Ich bekomm ganz viele Warnings und paar Errors in einigen Includes. -
In der Sufu finde ich dazu nichts, was soll ich da schreiben?
-
und wie sollte ich es hier machen?
ocmd:ooc(playerid,params[])
{
if(ooc == 0) return SendClientMessage(playerid,GRAU,"** Der OOC Chat wurde von einem Admin ausgeschaltet!");//Wenn OOC aus ist wird Message abgesendet
new text[128];
new string[128];
new Name[MAX_PLAYER_NAME];
GetPlayerName(playerid,Name,sizeof(Name));//Fragt name ab
if(sscanf(params,"s[128]",text)) return SendClientMessage(playerid,GRAU,"BENUTZUNG /ooc [text]");//Wenn befehl falsch eingegeben wurde
format(string,sizeof(string),"[OOC] %s:{FEFEFE} %s",Name,text);//Formatiert nachricht. WEISS
SendClientMessageToAll(0x00B9FFFF,string);//0x00B9FFFF - Hellblau
return 1;
}
ocmd:o(playerid){
return ocmd_ooc(playerid);
} -
ah vergessen, ich meine über strcmp das man ID oder Playernamen eingeben kann.
Ich vermute mal so:
ocmd:test(playerid){
SendClientMessage(playerid,-1,"TEST");
return 1;
}ocmd:test2(playerid){
return ocmd_test(pld);
}Edit:/ geht jetzt
-
und wie mach ich das man z.b bei /scheinezeigen die ID oder Namen eingeben kann.