Beitrag von Apokrate ()
Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
Mache es über die Gang ID.
format(query, sizeof(query), "UPDATE `user` SET `Gang`='0', `GRang`='0' WHERE `username`='%s'",leadername);
zu:
format(query, sizeof(query), "UPDATE `user` SET `Gang`='0', `GRang`='0' WHERE `Gang`='%d'",strval(leadername));
Die Variable leadername kannst du ja noch umbenennen.
hi leute ich will grad nen /v befehl machen aber wie kann ich alternativ zur id auch den namen oder auch nur die ersten paar buchstaben des autonamens eingeben?
http://forum.sa-mp.com/showthread.php?t=346727
Da kannst du die GetVehicleModelIDFromName Funktion nehmen, bzw. dir den Command anschauen.
http://forum.sa-mp.com/showthread.php?t=346727
Da kannst du die GetVehicleModelIDFromName Funktion nehmen, bzw. dir den Command anschauen.
sorry was ist das jetzt
Das ist ein /v Befehl genau wie du ihn haben willst (siehe Pastebin-Link).
ja habs mal angeschaut die includes die er haben will hab ich net
Die brauchst du auch nicht.
Zeig mal deinen /v Befehl.
ocmd:v(playerid,params[])
{
new carid;
new Float:xc, Float:yc, Float:zc, Float:ac;
GetPlayerPos(playerid,xc,yc,zc);
GetPlayerFacingAngle(playerid,ac);
if(sscanf(params,"i",carid))return SendClientMessage(playerid,COLOR_RED,"/v [carid]");
new vID = CreateVehicle(carid,xc,yc,zc,ac,1,1,-1,0);
SetPVarInt(playerid,"nCAR",vID);
PutPlayerInVehicle(playerid,vID,0);
SendClientMessage(playerid,COLOR_GREEN,"Fahrzeug erstellt.");
return 1;
}
ocmd:v(playerid,params[])
{
new carid, str[32];
if(sscanf(params,"s[32]",str))return SendClientMessage(playerid,COLOR_RED,"/v [carid/name]"); // Nur "s" falls du nicht das Plugin verwendest.
if(IsNumeric(str)) carid = strval(str);
else carid = GetVehicleModelIDFromName(str);
if(carid < 400 || carid > 611) return SendClientMessage(playerid,COLOR_RED,"Error: Ungültige ID.");
new Float:xc, Float:yc, Float:zc, Float:ac;
GetPlayerPos(playerid,xc,yc,zc);
GetPlayerFacingAngle(playerid,ac);
new vID = CreateVehicle(carid,xc,yc,zc,ac,1,1,-1,0);
SetPVarInt(playerid,"nCAR",vID);
PutPlayerInVehicle(playerid,vID,0);
SendClientMessage(playerid,COLOR_GREEN,"Fahrzeug erstellt.");
return 1;
}
stock IsNumeric(str[]) //©Jeffry
{
if(!strlen(str)) return 0;
for (new i = 0, j = strlen(str); i < j; i++) if(str[i] > '9' || str[i] < '0') return 0;
return 1;
}
Aus dem Pastebin kopierst du dir das Array mit den Fahrzeugnamen und die GetVehicleModelIDFromName-Funktion.
sorry bin anfänger weiß zb nicht was ein array ist^^
aber danke kopiere mir jetzt erstmal deinen code^^
Kein Problem, dafür brauchst du dich nicht zu entschuldigen.
Ein Array ist sowas hier:
new VehicleNames[212][] = {
//...
};
Das kopierst du einfach (das Teil in dem die ganzen Fahrzeugnamen stehen).
Neben-Info: http://wiki.sa-mp.com/wiki/Scripting_Basics#Arrays
C:\Users\SunRiZez\Desktop\samp037_svr_R1_win32\gamemodes\UltimateReallife.pwn(413) : warning 235: public function lacks forward declaration (symbol "GetVehicleModelIDFromName")
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
1 Warning.
Du hast das hier vergessen:
forward GetVehicleModelIDFromName(vname[]);
Alternativ kannst du das "public" vor GetVehicleModelIDFromName in "stock" ändern, dann geht es auch.
danke es läuft alles
Wäre es möglich, einem Spieler ein bestimmtes Objekt zu Attachen und anschließend das Objekt inkl. dem Spieler zu Moven?
/EDIT/:
Oder könnte man ein Objekt erstellen und den Spieler irgendwie an das Objekt "kleben" anschließend via. MoveObject das Objekt inkl. Spieler bewegen?
Oder könnte man ein Objekt erstellen und den Spieler irgendwie an das Objekt "kleben" anschließend via. MoveObject das Objekt inkl. Spieler bewegen?
Nein, aber du kannst ein Objekt an den Spieler kleben und den Spieler bewegen: Player Movement
hi leute mein sscanf lädt nicht :(((((((((((((((((((((((((((((((((((((((((((
im server log steht auch nur dass es nicht geladen wurde mehr nicht
Hey Leute, da Wiki zurzeit Down ist frage ich hier nach:
Ich habe eine schöne Map für mein guten Freund Slice erstellt, nun möchte ich folgendes machen:
Ich habe eine normale Map mit ungefähr 100 Objekten worin sich aber 2 Objekte befinden die per Befehl auftauchen sollen, genau da wo ich sie hingemappt habe.
Der Code der Türen sieht so aus:
tmpobjid = CreateObject(1498,1866.485,-2496.830,5047.411,0.000,0.000,36.199,300.000);
SetObjectMaterial(tmpobjid, 0, 5150, "wiresetc_las2", "ganggraf01_LA_m", 0);
SetObjectMaterialText(tmpobjid, "LOCKED", 0, 50, "Calibri", 15, 1, -65536, 0, 1);
tmpobjid = CreateObject(1498,1841.824,-2495.508,5047.339,0.000,0.000,335.900,300.000);
SetObjectMaterial(tmpobjid, 0, 5150, "wiresetc_las2", "ganggraf01_LA_m", 0);
SetObjectMaterialText(tmpobjid, "LOCKED", 0, 50, "Calibri", 15, 1, -65536, 0, 1);
Welche Callbacks benötige ich, welche Functions etc?
Ich möchte das man die Objekte erstellen kann (auf den Koordinaten oben angegeben) und ebenfalls wieder löschen kann.
Würde mich über eine schnelle Antwort freuen, ich würde es ja selber versuchen aber kann nicht viel ohne Wiki anfangen..
Edit1: Habs ohne Wiki geschafft ein Befehl zu erstellen um die Objekte zu erstellen. Wie lösche ich sie wieder?
CMD:edoor(playerid,params[])
{
new tmpobjid;
tmpobjid = CreateObject(1498,1866.485,-2496.830,5047.411,0.000,0.000,36.199,300.000);
SetObjectMaterial(tmpobjid, 0, 5150, "wiresetc_las2", "ganggraf01_LA_m", 0);
SetObjectMaterialText(tmpobjid, "LOCKED", 0, 50, "Calibri", 15, 1, -65536, 0, 1);
tmpobjid = CreateObject(1498,1841.824,-2495.508,5047.339,0.000,0.000,335.900,300.000);
SetObjectMaterial(tmpobjid, 0, 5150, "wiresetc_las2", "ganggraf01_LA_m", 0);
SetObjectMaterialText(tmpobjid, "LOCKED", 0, 50, "Calibri", 15, 1, -65536, 0, 1);
SendClientMessage(playerid,0xFF0055FF,"Rooms blocked");
return 1;
}
Hey Leute, da Wiki zurzeit Down ist frage ich hier nach:
Das Wiki ist nicht down. ![]()
Du benötigst MoveObject und einen Befehl. Gegebenenfalls CreateObject und DestroyObject.
Zum Edit:
Anstatt es in eine temporäre Variable zu speichern, setze unter den Includes:
new gObj[2];
Und dann beim Command:
gObj[0] = CreateObject(...
gObj[1] = CreateObject(...
Dann kannst du sie mit DestroyObject(gObj[i]); wieder entfernen, wobei das i für 0 und 1 steht.