Kannst playerid auch entfernen das brauchst du ja nicht mehr.
[SAMMELTHREAD] Kleine Scripting Fragen
- Rafelder
- Unerledigt
Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
Ich wollte eine Textur entfernen und komplett durch eine Farbe ersetzen. Habe eigentlich alles so gemacht wie im Tut erklärt aber die Textur schwindet nicht und es wird nur eingefärbt. Weiß jemand wie ich die Textur jetzt noch entfernen kann? Es soll einfach nur eine knallrote Fläche werden:
SetDynamicObjectMaterial(SchmaleWand[1], 0, -1, "none", "none", 0xFFFF0000);
-
Wie erstellst du das Objekt, kannst du den Code dazu posten? Dann würde ich es kurz ausprobieren.
-
SchmaleWand[61] = CreateDynamicObject(19427, 1550.35999, -1582.39539, 19.39650, 0.00000, 0.00000, 90.00000);
-
SetDynamicObjectMaterialText(SchmaleWand[61], " ", 0, OBJECT_MATERIAL_SIZE_256x128,"Arial", 50, 0, 0xFFFF0000, 0xFFFF0000, OBJECT_MATERIAL_TEXT_ALIGN_CENTER);
So ist es komplett rot bei mir.
-
Bekomme ich die Farbe so knalliger?
Ansonsten kann ich ja eine einfarbige Textur nutzen und diese rot färben, aber die Farbe wird nicht ganz so knallig und leuchtend wie im Colorpicker. -
Das ist das knalligste Rot was geht, 255,0,0.
Es kommt immer auf das Wetter und die Zeit in GTA an, wie hell es erscheint. -
Warum wird nix angezeigt also der Dialog wird nicht gezeigt:
COMMAND:platzieren(playerid)//Objekt platzieren
{
if(Spieler[playerid][Eingeloggt] == 0) return SendClientMessage(playerid,ROT,"Du bist nicht Eingeloggt!");
if(Spieler[playerid][pAFK] == 1)return SendClientMessage(playerid,WRONGCMD,"Du bist AFK. Benutze /back");
if(Spieler[playerid][pGetazert] == 1) return SendClientMessage(playerid,ROT,"Du bist getazert!");
if(Spieler[playerid][pHouseID] == defaulth)return SendClientMessage(playerid,GRAU,"Du besitzt kein Haus.");
for(new houseID = 0; houseID < MAX_HOUSE; houseID++)
{
if(IsPlayerInRangeOfPoint(playerid,5.0,HouseInfo[houseID][hiPos][0],HouseInfo[houseID][hiPos][1],HouseInfo[houseID][hiPos][2]))
{
if(HouseInfo[houseID][hID] == Spieler[playerid][pHouseID])
{
new longStr[500] = "",string[50];
for(new i = 0; i < MAX_INV; i++)
{
if(Inventar[playerid][i][0] == -1){//Inventarslot ist leer
format(string, sizeof(string),"Inventarslot nicht belegt!\n");
strcat(longStr,string);
strdel(string, 0, sizeof(string));
}
else
{
format(string,sizeof(string),"Objekt: %d\n",Inventar[playerid][i][0]);
strcat(longStr,string);
strdel(string, 0, sizeof(string));
}
}
if(strlen(longStr) == 0)
{
format(longStr,30,"Dein Inventar ist leer!");
}
ShowPlayerDialog(playerid,DIALOG_INVENTAR,DIALOG_STYLE_LIST,"Deine Objekte",longStr,"Okey","");
}
}
}
return true;
} -
Versuche es so:
COMMAND:platzieren(playerid)//Objekt platzieren
{
if(Spieler[playerid][Eingeloggt] == 0) return SendClientMessage(playerid,ROT,"Du bist nicht Eingeloggt!");
if(Spieler[playerid][pAFK] == 1)return SendClientMessage(playerid,WRONGCMD,"Du bist AFK. Benutze /back");
if(Spieler[playerid][pGetazert] == 1) return SendClientMessage(playerid,ROT,"Du bist getazert!");
if(Spieler[playerid][pHouseID] == defaulth)return SendClientMessage(playerid,GRAU,"Du besitzt kein Haus.");
for(new houseID = 0; houseID < MAX_HOUSE; houseID++)
{
if(IsPlayerInRangeOfPoint(playerid,5.0,HouseInfo[houseID][hiPos][0],HouseInfo[houseID][hiPos][1],HouseInfo[houseID][hiPos][2]))
{
if(HouseInfo[houseID][hID] == Spieler[playerid][pHouseID])
{
new string[500];
for(new i = 0; i < MAX_INV; i++)
{
if(Inventar[playerid][i][0] == -1)
{
//Inventarslot ist leer
format(string, sizeof(string),"%sInventarslot nicht belegt!\n", string);
}
else
{
format(string,sizeof(string),"%sObjekt: %d\n",string,Inventar[playerid][i][0]);
}
}
if(strlen(string) == 0)
{
format(string,sizeof(string),"Dein Inventar ist leer!");
}
ShowPlayerDialog(playerid,DIALOG_INVENTAR,DIALOG_STYLE_LIST,"Deine Objekte",string,"Okey","");
return 1;
}
}
}
return true;
} -
Hi, wie kann ich meinen Server auf Skinshot einstellen?
-
-
https://wiki.sa-mp.com/wiki/Lag_Compensation
https://wiki.sa-mp.com/wiki/Server.cfglagcompmode auf 1 setzen.
-
Danke, meins ist auf 0 und es ist immer noch bei Lagshot <.<
-
Du musst es auf 1 stellen, um den Skinshot einzuschalten.
-
Was ist in dieser Abfrage falsch?
Ich kan egal welchen Admin level vergeben???
if(aLvl <= 0 && aLvl >= 7)return SCM(playerid, COLOR_GREY, "FEHLER: Dieser Adminlevel exestiert nicht!");Der Befehl dafür sieht so aus:
CMD:setadmin(playerid, params[])
{
if(!IsPlayerAdmin(playerid) && pInfo[playerid][pAdmin] != 7)return SCM(playerid, COLOR_GREEN, "[Admin-FEHLER]: Du bist kein Supporter/Moderator/Administrator/Projektleiter!");
new pID, aLvl, string[349];
if(sscanf(params,"ui",pID, aLvl))return SCM(playerid, COLOR_GOLD, "Benutzung: /setadmin [Spieler-ID/Name] [Grund]");
if(pID==INVALID_PLAYER_ID)return SCM(playerid, COLOR_GREY, "FEHLER: Falsche Spieler-Id und/oder Name!");
if(aLvl <= 0 && aLvl >= 7)return SCM(playerid, COLOR_GREY, "FEHLER: Dieser Adminlevel exestiert nicht!");
format(string,sizeof(string), "Du wurdest vom Server zum Admin(%d) gemacht!\n\nViele Grüße,\n%s",aLvl, pName(playerid));
SCM(pID, COLOR_YELLOW, string);
format(string,sizeof(string), "SERVER: %s wurde zum Adminlevel(%d) ernannt!", pName(pID), aLvl);
SCMa(COLOR_CYAN, string);
pInfo[pID][pAdmin] = aLvl;
SaveUserStats(pID);
return 1;
}Lg,
Genadj_Andrenov -
Die Zahl kann nicht kleiner als 0 und größer als 7 sein. Da musst du oder verwenden.
if(aLvl <= 0 || aLvl >= 7) -
Hi, wie bekomme ich es hin das eine Fehler meldung auftaucht wenn der Spieler einen Falschen Command eingibt Z.b
/Test
Der Befehl /Test existiert nicht. -
Hi, wie bekomme ich es hin das eine Fehler meldung auftaucht wenn der Spieler einen Falschen Command eingibt Z.b
/Test
Der Befehl /Test existiert nicht.
new ausgabe[128];
format(ausgabe, strlen(ausgabe), "Der Befehl %s existiert nicht.", cmdtext);
SendClientMessage(playerid, DEINE_FARBE, ausgabe);Das setzt du einfach ganz am Ende (vor dem return) deines OnPlayerCommandText Callbacks.
-
strlen
Nein das ist hier falsch...sizeof wäre richtig -
das schaut dann so bei mir aus
return new string[144];format(string, sizeof(string), "[FEHLER]Der Befehl %s existiert nicht.", cmdtext);SCM(playerid,TESTFARBE, string);
Aber....C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(13085) : error 029: invalid expression, assumed zero
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(13085) : error 017: undefined symbol "string"
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(13085) : warning 215: expression has no effect
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(13085) : error 001: expected token: ";", but found "]"
C:\Users\Media Markt\Desktop\Virtual Roleplay Selfmade\Projekt\gamemodes\gr.pwn(13085) : fatal error 107: too many error messages on one lineCompilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
-
new string[145];
format(string, sizeof(string), "[FEHLER]Der Befehl %s existiert nicht.", cmdtext);
return SCM(playerid,TESTFARBE, string); -