Beiträge von RFT
-
-
kein wunder
if(!IsPlayerNPC(playerid))
{
SetSpawnInfo( playerid, 0, 0, 1958.33, 1343.12, 15.36, 269.15, 26, 36, 28, 150, 0, 0 );
SpawnPlayer(playerid);
return 1;
}Du hast das Ausrufe Zeichen vergessen. So setzt du sonst nur ne SpawnInfo für Bots.
LG RFT
-
Die Funktionen main()
und die Callbacks "OnPlayerText", "OnPlayerClickPlayer", "OnPlayerConnect" und "OnDialogResponse" hast du doppelt im Script.
//Edit @ TechnoMac für den Fehler brauch man die Zeilen nicht
LG RFT
-
Alles anzeigen
@ RFT
Kann nicht sein,da ich dieses Probiert habe, dennoch Ohne Erfolg.
Also kann es ja Irgendwie nicht an dem Liegen oder?!@ HouseMusiic
Bekommst eine PN von mir mit der .pwn Datei

Dann zeig uns mal etwas Code von dir.
Wichtig ist das die SpawnInfo vor SpawnPlayer gesetzt wird.
Am besten schon beim Connecten unter OnPlayerConnect.LG RFT
-
Dann gibts keine möglichkeit.
Ohne PWN kannst du das Script vergessen.
Eigentlich kauft man ja auch nur Scripts wo die pwn enthalten ist.
Da solltest du dich nochmal mit DeadWalker in Verbindung setzen.LG RFT
-
Ich kann nicht Scripten
Aber du kannst das Objekt einfach neu Laden.. Ich bin mir sicher das das irgentwie geht.Klar geht das.
Alltes Object einfach per DestroyObject zerstören und das selbe an gleicher stelle neu createn.LG RFT
-
Das liegt an SA-MP 0.3D.
Du musst vor dem Spawnen seine SpawnInfo mit SetSpawnInfo setzen und erst danach kannst du die Funktion SpawnPlayer nutzen.LG RFT
-
Ich würde PVars benutzen.
Ansonsten habe ich nix zu bemängeln sieht soweit ganz schön aus.Bewertung: 9/10
LG RFT
-
Die Map sieht meiner Meinung nach 1A aus.
Endlich mal wieder was ordentliches unter den tausenden Maps.10/10
LG RFT
-
Ihr müsst folgendes oben definieren
#define Jobs_On_This_Server 1Der Fehler cmd war mein fehler statt cmd muss dort cmdtext stehen =)
respone gegen response austauschen und dort wor der str Fehler kommt "new str[128];" eintragen
Dialog_Slyle_List gegen DIALOG_STYLE_LIST austauschen und somir sollten alle Errors behoben sein -
Wenn es Er!k ist hat der sich die Chance meiner Meinung nach 100% vermasselt denn die beleidigungen VIA PN war echt nicht ohne.
//Edit: Bei diesen User hier handelt es sich nicht um Er!k.
LG RFT
-
Hallo,
ich habe soeben eine Anfrage bekommen.
Ein User wollte wissen wie man Nebenjob´s hinzufügt.
Daraufhin dachte ich mir das ich mal ein Tutorial für ein Job System bastel.
Dies kann man auch als Nebenjob System nutzen.Als aller erstes definieren wir die Jobs dazu setzen wir erstmal eine Enum Struktur:
enum JobI
{
jName[32],
Float: jX,
Float: jY,
Float: jZ,
}Ich erstelle zum Beispiel mal den Job Drogen Dealer:
#define Jobs_On_This_Server 1 //Hier einträgen wieviele Jobs auf euren Server geben soll diese müssen allerdings alle definiert werden
new Jobs[Jobs_On_This_Server][JobI]={
{"Drogen Dealer", 0.0, 0.0, 0.0}
// %1 %2 %3 %4
};Beschreibung:
%1: Der name des Berufes
%2,%2,%3: Die X, Y, Z Koordinaten wo der Spieler seinen Beruf nachgehen kann.Als nächstes erkläre ich euch wie die Leute einen Job annehmen können.
Die Jobs werden aller untereinander im Dialog aufgelistet.
Hier der Befehl um einen Job anzunehmen.Wir definieren für unser JobSystem ein Dialog. (Off Topic: Hier zeige ich euch das man auch eine ID für mehrere Dialoge verwenden kann)
#define DiaJob 1
if(strcmp(cmd, "/jobs", true) == 0)
{
if(GetPVarInt(playerid, "pJob") != 0)return true; // Der Spieler hat schon einen Job
new str[256];
for(new i=0; i < Jobs_On_This_Server; i++)format(str, sizeof(str), "%s\n%s", str, Jobs[i][jName]);
ShowPlayerDialog(playerid, DiaJob, DIALOG_SLYLE_LIST, "Jobs", str, "Auswählen", "Abbrechen");
SetPVarInt(playerid, "DiaAction", 1); //Brauchen wir damit wir nur eine Dialogid benötigen.
return true;
}
if(strcmp(cmd, "/kündigen", true) == 0)
{
if(GetPVarInt(playerid, "pJob") == 0)return true; // Der Spieler hat keinen Job
ShowPlayerDialog(playerid, DiaJob, DIALOG_STYLE_MSGBOX, "Kündigung", "Bist du dir sicher das du deinen Job kündigen willst?", "Ja", "Abbrechen");
SetPVarInt(playerid, "DiaAction", 2); //Brauchen wir damit wir nur eine Dialogid benötigen.
return true;
}Jetzt folg der wichtigste Teil zu diesen Job System.
Dieser folgende Code gehört unter OnDialogResponse)
if(dialogid==DiaJob)
{
switch(GetPVarInt(playerid, "DiaAction"))
{
case 1:
{
if(respone)
{
SetPVarInt(playerid, "SelectedJob", listitem+1);
SetPVarInt(playerid, "DiaAction", 3);
new str[128];
format(str, 128, "Bist du dir sicher das du den Job %s\nMachen möchtest ?", Jobs[listitem+1][jName]);
ShowPlayerDialog(playerid, DiaJob, DIALOG_STYLE_MSGBOX, "Bestätigen", str, "JA", "Zurück");
}
else return true;
}
case 2:
{
if(response)
{
SetPVarInt(playerid, "DiaAction", 0);
ShowPlayerDialog(playerid, DiaJob, DIALOG_STYLE_INPUT, "Kündigung", "Du hast deinen Beruf erfolgreich gekündigt.", "OK", "");
SetPVarInt(playerid, "pJob", 0);
}
else return true;
}
case 3:
{
if(response)
{
SetPVarInt(playerid, "pJob", GetPVarInt(playerid, "SelectedJob"));
new str[128];
format(str, 128, "Info: Du hast den Job %s\nNun angenommen.", Jobs[GetPVarInt(playerid, "pJob")][jName]);
ShowPlayerDialog(playerid, DiaJob, DIALOG_STYLE_MSGBOX, "Info", str,"OK", "");
SetPVarInt(playerid, "DiaAction", 0);
return true;
}
else
{
for(new i=0; i < Jobs_On_This_Server; i++)format(str, sizeof(str), "%s\n%s", str, Jobs[i][jName]);
ShowPlayerDialog(playerid, DiaJob, DIALOG_SLYLE_LIST, "Jobs", str, "Auswählen", "Abbrechen");
SetPVarInt(playerid, "DiaAction", 1); //Brauchen wir damit wir nur eine Dialogid benötigen.
return true;
}
}
}
}Ob der Spieler ein einem Beruf ist könnt ihr so abfragen
BSP:
if(GetPVarInt(playerid, "pJob") ==1)//Wäre in unseren Fall der Drogen DealerIch hoffe ich konnte es soweit verständlich erklären.
Dieses Script ist nicht auf Fehler getestet da ich es hier im Forum geschrieben habe.//Edit[1]: Fehlerbehebung 1
//Edit[2]: Fehlerbehebung 2LG RFT
-
Dazu bräuchten wir mehr Code das da oben sind ja nur die Variabeln.
Wir bräuchten den abschnitt wo die Werte ausgelesen werden.LG RFT
-
Selbst wenn das so ist. Dieses Video kann sich sehen lassen ist meiner Meinung nach geworden.
LG RFT
-
Setz unter Taxi für den Spieler noch eine Variable.
Ob er den Taxi Befehl genutzt hat. Unter /annehmen fragst du dann ab ob der Spieler ein Taxi gerufen hat.
Ausserdem wieso nutzt du für ein Befehl strcmp und danach wieder ocmd ?LG RFT
-
if(GetPlayerWantedLevel(playerid) > 1)Ab jetzt werden die Wanted Levels nur noch abgezogen wenn er Spieler über 1 Also 2 Wanteds oder mehr hat.
-
So weit ich weiß geht das nicht sollte jemand wissen wie es geht oder das es möglich ist belehrt mich eines besseren
MFG
Billy
Es sind ja leider nur Objekte.
Diese Leuchten können nur ab einer bestimmtem Woldtimer leuchten von daher ist es nicht möglich.LG RFT
-
Mach lieber ein extra Timer der das überprüft und nicht unter OnPlayerUpdate
Würde ich nicht machen. Er möchte ja überprüfen ob der Spieler sich die ganzen zwei Minuten im Radius befindet. Soll er da etwa ein Timer nehmen der jede Sekunde ein Callback aufruft ?
Das dann sagen wir mal für 20 Spieler ? Da finde ich die Lösung unter "OnPlayerUpdate" angebrachter.LG RFT
-
PutPlayerInVehicle(playerid,vID,0); //Die 0 ist der Fahrersitz
-
new Float:x,Float:y;Float:z;
GetPlayerPos(kundenid, x,y,z);
SetPlayerCheckpoint(taxiid, x,y,z, 3.0);LG RFT