1) das gehört hier rein
2) hast du die nötigen plugins in deinem Ordner "plugins" ?
Beiträge von DialogHD
-
-
was ist Zeile
2746
und Zeile
2764?//Edit: Dein Code ergibt hier keinen Sinn:if(IsPlayerInRangeOfPoint(playerid,30.0,2237.831787, 2450.287842, 9.971788 )) <-- du fragst hier ab ob der Spieler in der nähe ist
{
MoveDynamicObject(FBIEingangTor,2237.849854, 2458.842041, 10.011017, 3.5);
SetProTimer("FBIEingangTor1", 9000, 0);
}
else //Das passiert wenn er nicht in der nähe ist
{
MoveDynamicObject(FBIEingangTor,2237.831787, 2450.287842, 9.971788, 3.5);
}
if(IsPlayerInRangeOfPoint(playerid,30.0,2293.852295, 2500.680908, 5.106819)) //Das passt hier garnicht rein.
{
MoveDynamicObject(FBIGarageTorA,2293.852295, 2508.680908, 5.106819, 3.5);
SetProTimer("FBIGarageTorA1", 9000, 0);
}( Habe den pwn Code ausgelassen um es Farblich zu makieren. )
-
Wenn du die map verkaufst must du das ganze hier rein packen.
-
ohne Code können wir da nicht mehr sagen.
-
Dann bekommt ja jeder Straum dieses Schild aufm Dach...
nicht wenn du
if(vehicleid == TaxiVehs[i])
zu
if(vehicleid == TaxiVehs[i] && GetVehicleModel(vehicleid) ==/* Stratum Model ID, welche das auch immer ist^^*/)
machst -
Will ja nur auf dem Stratum nicht auf alle Taxis
dann mach doch für die Stratum's' (hoffe das ist richtig xD ) eine extra variable.
oder du baust das noch ein:
if(GetVehicleModel(vehicleid) ==/* Stratum Model ID, welche das auch imemr ist^^*/) -
mach das so:
unter OnGameModeInit anstatt OnPlayerConnect
for(new playerid = 0; playerid < MAX_PLAYERS; playerid++)
{
textdraw[playerid] = TextDrawCreate(492.000000, 1.000000,buffer);
TextDrawFont(textdraw[playerid],3);
TextDrawLetterSize(textdraw[playerid],0.52,2.29999);
TextDrawSetShadow(textdraw[playerid],1);
TextDrawColor(textdraw[playerid],0xFFDC00FF);
TextDrawSetOutline(textdraw[playerid],1);
} -
OnVehicleSpawn wird meines Wissens nach aber nicht beim ersten Vehicle-Spawn aufgerufen..
Wenn ein Taxi mehrmals kaputt geht ist das schild dann auch doppelt auf dem Dach, da es immer neu gesetzt wird^^ -
was machst du den da
mach das ganze doch mit einer Schleife die alle TaxiVeh's durchgeht.
(unter OnVehicleSpawn ;), und unter OnVehicleDeath löschen weil es sonst doppelt auf dem Dach ist. ) -
-
Gibt viele Möglichkeiten die ID zu speichern, z.B. in deinem Spieler enum (falls du sowas hast) oder mit SetPVarInt...
Und dann einfach in einem Dialog prüfen welche ID gespeichert ist.
enum würde doch nicht funktionieren da der Dialog von Script aus vergrößert/verkleinert wird und nicht immer die selbe größe hat.
Wie stellst du dir das vor?
und mit SetPVarInt kann ich doch nur Werte für Spieler Speichern, ich kann ja auch schlecht die Position vom Notruf im Dialog Speichern. -
falls also der erste spieler in der schleife nicht in der gleichen virtuellen welt ist wird der befehl also abgebrochen.. gute taktik....not
zumindest habe ich versucht ihm mit einer idee zu helfen, anstatt mich über andere ideen zu Beschweren
-
Soweit funktioniert alles,
allerdings habe ich das ganze im DIALOG_STYLE_LIST, weil ich möchte das er den Notruf anklicken kann und anschließend ein Checkpoint etc entsteht.
Wie kann ich jetzt am besten im Dialog die ID speichern bzw dafür sorgen das er die richtige ID bekommt.Gibt es dafür eine funktion?
-
if (realchat)
{
if(SpielerInfo[playerid][pTot] == 1)
{
SendClientMessage(playerid,COLOR_GRAD2,"Als Toter kannst du nicht Sprechen!");
return 0;
}
if(SpielerInfo[playerid][pTot] == 0)
{
for(new i = 0; i < GetMaxPlayers(); i++)
{
if(GetPlayerVirtualWorld(playerid) != GetPlayerVirtualWorld(i)) { return 0; }
format(string, sizeof(string), "%s sagt: %s", SpielerName(playerid), text);
ProxDetector(20.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
return 0;
}
}
return false;
} -
soviel hat mir die wiki auch schon verraten
es hilft mir nicht auf die Lösung des problems zu kommen...wahrscheinlich versteh ich einfach die anwendung nicht richtig
-
ich hab mal etwas rumprobiert und es derzeit so:
ocmd:na(playerid,params[])
{
if(!IsPlayerConnected(playerid)) { return 1; }
if(Team[playerid] == 0) return SendClientMessage(playerid,Rot,"Du bist dazu nicht befugt.");
for(new i =0; i < MAX_PLAYERS; i++)
{
if(NotrufState[i] == 0) { return 1; }
if(NotrufState[i] != Team[playerid]) { return 1; }
new string[128] = "[NOTRUF]";
new Name[MAX_PLAYER_NAME];
GetPlayerName(i,Name,sizeof(Name));
strcat(string, "%s---",Name); //Error
strcat(string, "%s---",Zeit[i]); //Error
strcat(string, "%s---\n",Pos[i]); //Error
strcat(string, "->%d\n\n",Beschreibung[i]); //hier seltsamer weise nicht xD
}
return 1;
}Das ganze soll später so aussehen: (ein Beispiel)
[NOTRUF]DialogHD---17:06---Santa Maria Beach---
-> Hier brennt esallerdings bekomme ich 3 Errors:
(1931) : error 035: argument type mismatch (argument 3)
(1932) : error 035: argument type mismatch (argument 3)
(1933) : error 035: argument type mismatch (argument 3) -
-
ocmd:respawncars(playerid,params[])
{
if(sSpieler[playerid][Rang] >= 11)
{
for(new i; i < 21; i++)
{
for(new player=0; player<MAX_PLAYERS; player++)
{
if(!IsPlayerInVehicle(player,Fcars[sSpieler[playerid][Fraktion]][i]))
{
SetVehicleToRespawn(Fcars[sSpieler[playerid][Fraktion]][i]);
}
}
}
}
}
versuch es mal -
hast du bei plugins | .dll ?
das braucht man nicht, es ist nur wichtig bei Linux Servern die endung .so zu benutzen
//Edit hast du den überhaupt die .amx von deinem Script? -
zeig mal einen größeren teil vom Code,
wie du Adminlevel nutzt etc.