[SAMMELTHREAD] Kleine Scripting Fragen
- Rafelder
- Unerledigt
-
-
An welchen stellen im GF kann ich bestimmen wieviel Liter Tank ein Car hat?
weil jedesmal wenn ich mir ein Car kaufe sind nur 1l im Tank//e
nocheine frage
wie muss ich das scripten dass, das Jetpack gelöscht wird wenn man ihn verlässt?
if(strcmp("/jetpack", cmd, true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pAdmin] >= 2001)
{
SetPlayerSpecialAction(playerid,2);
format(string,sizeof(string),"%s hat jetpack gemacht.",sendername);
return 1;
}
}
} -
wie muss ich das scripten dass, das Jetpack gelöscht wird wenn man ihn verlässt?
SetPlayerSpecialAction None ? -
-
Hey,
Wie hies nochmal die linke Steuerungtaste komme mit der Flat net aufs Wiki
Danke
-
Hey,
Wie hies nochmal die linke Steuerungtaste komme mit der Flat net aufs Wiki
Danke
Was meinste mit Steuerungstaste??
KEY_JUMP ?? -
Was meinste mit Steuerungstaste??
KEY_JUMP ??Jap aber Key_Jump ist doch Dhift oder?
-
Steuerungstaste?
STRG ist KEY_ACTION -
Mal so ne Frage:
Ich habe einen Radius (sagen wir mal 400 Meter) und ich möchte diesen auf der Minimap visuell sichtbar machen. Dann müsste ich ja mehrere GangZones nutzen und diese so anordnen, dass in etwa ein Kreis bei rauskommt (mit vielen kleinen Kanten, aber besser gehts halt nicht).
Hat da jemand eine Funktion parat, die genau das macht? Ich meine ich hätte vor einiger Zeit mal was bezüglich dieses Problems gelesen, bin mir aber nicht mehr ganz sicher.
-
new PlayerText:TD1[MAX_PLAYERS];
//GamemodeInit
TD1 = CreatePlayerTextDraw(3.666702, 281.659332, "/god:");
PlayerTextDrawLetterSize(TD1, 0.285999, 1.371851);
PlayerTextDrawAlignment(TD1, 1);
PlayerTextDrawColor(TD1, -1);
PlayerTextDrawSetShadow(TD1, 2);
PlayerTextDrawSetOutline(TD1, 0);
PlayerTextDrawBackgroundColor(TD1, 51);
PlayerTextDrawFont(TD1, 2);
PlayerTextDrawSetProportional(TD1, 1);//PlayerConnect
new text[32];
switch(God[playerid])
{
case 0: format(text, sizeof(text), "/god: AUS");
case 1: format(text, sizeof(text), "/god: AN");
}
PlayerTextDrawSetString(playerid,text,TD1);
PlayerTextDrawShow(playerid, TD1[playerid]);Warum bekomme ich:
ZitatC:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(164) : error 017: undefined symbol "TD1"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(164) : warning 213: tag mismatch
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(164) : error 035: argument type mismatch (argument 3)
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(165) : error 017: undefined symbol "TD1"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(166) : error 017: undefined symbol "TD1"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(167) : error 017: undefined symbol "TD1"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(168) : error 017: undefined symbol "TD1"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(169) : error 017: undefined symbol "TD1"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(170) : error 017: undefined symbol "TD1"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(171) : error 017: undefined symbol "TD1"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(172) : error 017: undefined symbol "TD1"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(208) : error 035: argument type mismatch (argument 2)
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(209) : error 017: undefined symbol "TD1"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(209) : warning 215: expression has no effect
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(209) : error 001: expected token: ";", but found "]"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(209) : error 029: invalid expression, assumed zero
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(209) : fatal error 107: too many error messages on one line -
-
Du musst TD1[playerid]
nehmenAbgesehen davon stimmen deine Parameter nicht, da die ID in der FUnktion wiedergegeben wird
-
Du musst TD1[playerid] nehmen
Wo genau? Oben bei "New"?
Abgesehen davon stimmen deine Parameter nicht, da die ID in der FUnktion wiedergegeben wird
Sorry, aber ich bin neu. Ich versteh nicht ganz, was du jetzt willst -
Nein dort wo du es verwendest
Also nicht TD1 =
sondern TD1[playerid] =Schau dir die Funktionen im Wiki an dann siehst du was ich meine
Gruß
-
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(164) : error 017: undefined symbol "playerid"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(165) : error 017: undefined symbol "playerid"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(166) : error 017: undefined symbol "playerid"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(167) : error 017: undefined symbol "playerid"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(168) : error 017: undefined symbol "playerid"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(169) : error 017: undefined symbol "playerid"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(170) : error 017: undefined symbol "playerid"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(171) : error 017: undefined symbol "playerid"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(172) : error 017: undefined symbol "playerid"
C:\Users\Performer\Desktop\Legendary Stunting\gamemodes\mainscript.pwn(208) : error 035: argument type mismatch (argument 2)
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase10 Errors.
-
Und überall noch playerid, hinschreiben
-
Suche immer noch eine Lösung. Siehe oben
-
OnGameModeInit hat keinen Parameter playerid. Also entweder du erstellst das TextDraw wenn ein Spieler Connected (OnPlayerConnect) und zerstörst es wenn er disconnected (OnPlayerDisconnect)
oder
du lässt bei OnGameModeInit eine for loop mit Maximum MAX_PLAYERS laufen.
new PlayerText:TD1[MAX_PLAYERS];
//GamemodeInit
for(new playerid = 0;playerid<MAX_PLAYERS;playerid++)
{
TD1[playerid] = CreatePlayerTextDraw(3.666702, 281.659332, "/god:");
PlayerTextDrawLetterSize(TD1[playerid] , 0.285999, 1.371851);
PlayerTextDrawAlignment(TD1[playerid] , 1);
PlayerTextDrawColor(TD1[playerid] , -1);
PlayerTextDrawSetShadow(TD1[playerid] , 2);
PlayerTextDrawSetOutline(TD1[playerid] , 0);
PlayerTextDrawBackgroundColor(TD1[playerid] , 51);
PlayerTextDrawFont(TD1[playerid] , 2);
PlayerTextDrawSetProportional(TD1[playerid] , 1);
}
//PlayerConnectnew text[32];
switch(God[playerid])
{
case 0: format(text, sizeof(text), "/god: AUS");
case 1: format(text, sizeof(text), "/god: AN");
}
PlayerTextDrawSetString(playerid,text,TD1[playerid] );
PlayerTextDrawShow(playerid, TD1[playerid]);Besser wäre es aber wohl wirklich das beim Connected zu erstellen.
-
oderdu lässt bei OnGameModeInit eine for loop mit Maximum MAX_PLAYERS laufen.
das wird nicht funktionieren Wenn du PlayerTextDraws erstellst während die playerid Offline ist, passiert rein gar nichts -
das wird nicht funktionieren Wenn du PlayerTextDraws erstellst während die playerid Offline ist, passiert rein gar nichts
Eine frage, benutze die PlayerTextdraws mit "new PlayerText:tScore" nicht wie im Wiki mit "new PlayerText:tScore[MAX_PLAYERS]" aber alles klappt super ohne fehler, weißt du villeicht wieso? -
Eine frage, benutze die PlayerTextdraws mit "new PlayerText:tScore" nicht wie im Wiki mit "new PlayerText:tScore[MAX_PLAYERS]" aber alles klappt super ohne fehler, weißt du villeicht wieso?
das funktioniert nur solange ALLE textdraws in der GLEICHEN Reihenfolge für JEDEN Spieler erstellt werden.TextDraw A -> id 0
TextDraw B -> id 1
TextDraw C -> id 2sofern alle PlayerTextDraws nur in OnPlayerConnect erstellt werden ist das mit der gleichen Reihenfolge gegeben... wenn jetzt aber einzelne PlayerTextDraws für Spieler später durch Commands( etc. ) erstellt werden ist die gleiche Reihenfolge der IDs in Gefahr
deshalb verwendet man lieber [MAX_PLAYERS] und ist auf der sicheren Seite