Halölo breadfish
Nur ne kleine Frage ![]()
Suche den define für die Function
Also das man anstatt public nur Function schreibt und das forward automatisch gemacht wird
Danke im Vorraus ![]()
Halölo breadfish
Nur ne kleine Frage ![]()
Suche den define für die Function
Also das man anstatt public nur Function schreibt und das forward automatisch gemacht wird
Danke im Vorraus ![]()
SetPlayerInterior(playerid,0);
Das sagt alles
Hallo Community
ich suche ein Tutorial o.Ä. zu einem Dynamischen Fraktionscar system. Habe leider noch nichts gefunden. Am liebsten wäre es mir mit MySQL aber muss nicht sein. Hatte da was mit Internetink angefangen (lange her) und jetzt hat er keine Lust mehr ![]()
Danke im Vorraus
Ahhhh ![]()
Vielen Dank hat geklappt^^
Danke für die schnelle Hilfe
(gegen meinen kopf stoß)^^
Mit MySQL
Edit:
SavePlayer
stock SavePlayer(playerid)
{
if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid) && Eingeloggt[playerid] == 1) {
Spieler[playerid][Skin] = GetPlayerSkin(playerid);
mysql_SetInt("accounts", "Admin", Spieler[playerid][Admin], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "TelNummer", Spieler[playerid][TelNummer], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "TelBuch", Spieler[playerid][TelBuch], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "Level", Spieler[playerid][Level], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "Respekt", Spieler[playerid][Respekt], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "Geld", Spieler[playerid][Geld], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "BankGeld", Spieler[playerid][BankGeld], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "Kills", Spieler[playerid][Kills], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "Tode", Spieler[playerid][Tode], "Name", Spieler[playerid][pName]);
mysql_SetFloat("accounts", "Health", Spieler[playerid][pHealth], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "Leader", Spieler[playerid][Leader], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "Member", Spieler[playerid][Member], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "Wanted", Spieler[playerid][Wanted], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "Skin", Spieler[playerid][Skin], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "MinutenSeitPayday", Spieler[playerid][MinutenSeitPayday], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "AutoLic", Spieler[playerid][AutoLic], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "LKWLic", Spieler[playerid][LKWLic], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "BikeLic", Spieler[playerid][BikeLic], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "FlugLic", Spieler[playerid][FlugLic], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "WaffenLic", Spieler[playerid][WaffenLic], "Name", Spieler[playerid][pName]);
mysql_SetInt("accounts", "BootLic", Spieler[playerid][BootLic], "Name", Spieler[playerid][pName]);
Eingeloggt[playerid] = 0;
}
return 1;
}
Und das macht Sinn weil?
Das gleiche hab ich mich auch gefragt aber Lösungen habe ich schon auf noch kuriosere Wege gefunden ![]()
OngamemodeExit
public OnGameModeExit()
{
for(new i = 0; i < MAX_PLAYERS; i++) {
SavePlayer(i);
}
return 1;
}
Hab ihn erstellt ![]()
Problem bleibt das selbe
Hallo Community
Es ist ein kleines aber feines Problem ![]()
Undzwar wenn ich den Server lokal beende also auf das überall bekannte "X" klicke stürzt er ab anstatt einfach aus zugehen
hier ein Screen:
http://imageshack.us/photo/my-images/24/unbenanntqrj.png/
Hallo Community
Der Befehl:
ocmd:timegmx(playerid,params[])
{
new zeit;
if(Eingeloggt[playerid] == 0) { return 1; }
if(SpielerInfo[playerid][pAdmin] < 1337) { return SendClientMessage(playerid, COLOR_GRAD1, "Du bist kein Admin oder dein Rang ist zu niedrig!"); }
if(sscanf(params,"i",zeit))return SendClientMessage(playerid,COLOR_RED,"/timegmx [Zeit(in Minuten)]");
SetTimer("TimeGMX",zeit*1000*60,0);
SetTimer("TimeGMXSave",zeit*1000*60-10000,0);
SendClientMessageToAll(COLOR_YELLOW, "!!ACHTUNG!! Alle Arbeiten abbrechen");
new tempstring[128];
format(tempstring, sizeof tempstring, "!!ACHTUNG!! Der Server startet in %d Minuten neu!",zeit);
SendClientMessageToAll(COLOR_YELLOW, tempstring);
return 1;
}
Hier die Funktion:
Function TimeGMX()
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
GameTextForPlayer(i, "~b~Los Santos Roleplay startet ~r~neu~n~~n~~n~ ~y~Warte 10 Sekunden~n~", 10000, 3);
}
SendRconCommand("gmx");
}
Function TimeGMXSave()
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
GameTextForPlayer(i, "~r~Alle Accounts wurden gespeichert~n~In 10 Sekunden startet der Server neu", 10000, 3);
SavePlayer(i);
}
SaveStuff();
}
Das Problem ist: Das TimeGMXSave wird aufgerufen aber 20 Sekunden später wird er nicht neugestartet
Danke im Vorraus
Hallo Community
ja die Überschrift sagt ja eigendlich schon alles.
Sobald ich den Server über einen Befehl neustarte sind alle Textdraws einfach weg und kommen nicht wieder bis auf die Uhrzeit..
Wenn ich ihn aber aus mache und wieder an mache dann geht es wieder
Hier die Neustart Funktion:
Function TimeGMX()
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
GameTextForPlayer(i, "~b~Los Santos Roleplay startet ~r~neu~n~~n~~n~ ~y~Warte 10 Sekunden~n~", 10000, 3);
}
SendRconCommand("gmx");
}
So wenn es morgen auch noch funktioniert ist es super ![]()
Ich hatte das unter dem Wanted befehl ![]()
Das heiß wenn jemand ein Wanted bekomen hat, dann hat er das erst erstellt ![]()
Also habe bis jetzt nur das:
new PlayerText3D:WantedLabel[MAX_PLAYERS];
new str[64];
format(str,sizeof(str),"Info\n_________________\nWantedlevel: %d",GetPlayerWantedLevel(giveplayerid));
WantedLabel[giveplayerid] = CreatePlayer3DTextLabel(giveplayerid,str,COLOR_RED,0.0,0.0,0.0,40.0);
Ist ja jetzt nicht soooooooooo viel ![]()
Öhm okey ![]()
Wenn ich zu deinem Script dann fragen habe würdest du sie mir auch beantworten?
Ich würde das ja schon gerne verstehen wie es geht ![]()
ja soll es ja sein ![]()
Hallo Brotfische
Ich suche eine Lösung wie einer mit Wanted ein 3d Text über dem Kopf bekommt. Dieses sollte aber nur für (IsACop(playerid)) zu sehen sein. Bisher hat es immer nur so geklappt das es jeder gesehen hat.
Und das ist ja nicht der Sinn der Sache...
Danke im Vorraus
Öhm eig. nimmt der i + 1 d.H. die Koordinaten des nächsten Checkpoints bei den AFahrschulCPs
//EDIT
Kann geschlossen werden war nur eine Sache von groß und Klein schreibung -_-
Hallo Forum ![]()
Habe ein Problem mit meiner automatischen Fahrschule
Ich wollte die halt so halt dynamisch machen
hier der Code dazu:
#define AFAHRSCHULCPS 53
enum AFahrschuleCPs
{
Nummer,
Float:posX,
Float:posY,
Float:posZ
}
new AFahrschulCPs[AFAHRSCHULCPS][AFahrschuleCPs] = {
{1,939.7825,-1027.5471,31.7734},
{2,939.7662,-987.9471,38.0991},
{3,946.8555,-976.8609,38.4638},
{4,1007.9671,-970.1245,41.4448},
...
{52,908.9140,-1041.4290,31.4799}
Die gehen weiter bis Nummer "52"
So dann hier unter Onplayerentercheckpoint
if(AutoPruefung[playerid] == 1 && TakingLesson[playerid] == 1)
{
for(new i=0; i <= sizeof AFahrschulCPs; i++)
{
if(IsPlayerInRangeOfPoint(playerid, 8.0, AFahrschulCPs[i][posx],AFahrschulCPs[i][posy],AFahrschulCPs[i][posz]));
{
if(AFahrschulCPs[i][Nummer] == 52)
{
SetVehicleToRespawn(GetPlayerVehicleID(playerid));
SendClientMessage(playerid, COLOR_GREEN, "Du hast die Fahrschulprüfung für den Autoführerschein erfolgreich bestanden!");
SendClientMessage(playerid, COLOR_GREEN, "Du hast nun den Führerschein. Fahr vorsichtig!");
AutoPruefung[playerid] = 0;
TakingLesson[playerid] = 0;
SpielerInfo[playerid][pCarLic] = 1;
DisablePlayerCheckpoint(playerid);
return 1;
}
else
{
SetPlayerCheckpoint(playerid, AFahrschulCPs[i+1][posx],AFahrschulCPs[i+1][posy],AFahrschulCPs[i+1][posz], 8.0);
}
}
}
}
Und da kommen dann folgende Errors:
C:\Users\Marci\Desktop\Server\Los Santos Roleplay\gamemodes\LSR0.7beta.pwn(6737) : warning 213: tag mismatch
C:\Users\Marci\Desktop\Server\Los Santos Roleplay\gamemodes\LSR0.7beta.pwn(6737) : error 032: array index out of bounds (variable "AFahrschulCPs")
C:\Users\Marci\Desktop\Server\Los Santos Roleplay\gamemodes\LSR0.7beta.pwn(6737) : error 036: empty statement
C:\Users\Marci\Desktop\Server\Los Santos Roleplay\gamemodes\LSR0.7beta.pwn(6752) : warning 213: tag mismatch
C:\Users\Marci\Desktop\Server\Los Santos Roleplay\gamemodes\LSR0.7beta.pwn(6752) : error 032: array index out of bounds (variable "AFahrschulCPs")
Zeile
6737 if(IsPlayerInRangeOfPoint(playerid, 8.0, AFahrschulCPs[i][posx],AFahrschulCPs[i][posy],AFahrschulCPs[i][posz]));
6752 SetPlayerCheckpoint(playerid, AFahrschulCPs[i+1][posx],AFahrschulCPs[i+1][posy],AFahrschulCPs[i+1][posz], 8.0);
Danke für die schnelle und späte bzw. frühe Hilfe werde es mal testen ![]()
//EDIT
Vielen Dank
Das hat mir gefehlt es Funktionert
Würde es eine Bedanekn Funktion geben würdest du ein Thanks von mir bekommen ![]()
Also würde das so gehen?
if(SpielerInfo[playerid][pLevel] == 3)
{
if(mysql_CheckGeworbenAccount(SpielerInfo[playerid][pGeworbenVon]) == 1)
{
SpielerInfo[playerid][pGeworben] = inputtext;
new string[64];
format(string, sizeof string, "Da du Level 3 erreicht hast hat %s eine Prämie bekommen.", SpielerInfo[playerid][pGeworbenVon]);
SendClientMessage(playerid, COLOR_GREEN, string);
if(IsPlayerConnected(SpielerInfo[playerid][pGeworbenVon])
{
if(SpielerInfo[SpielerInfo[playerid][pGeworbenVon]][pDonateRank] > 0)
{
SendClientMessage(SpielerInfo[playerid][pGeworbenVon], COLOR_GREEN, "Jemand den du geworben hast, hat Level 3 erreicht!");
SendClientMessage(SpielerInfo[playerid][pGeworbenVon], COLOR_GREEN, "Du hast nun 300.000 $ auf dein Bankkonto bekommen");
SendClientMessage(SpielerInfo[playerid][pGeworbenVon], COLOR_GREEN, "Und da du schon ein Premium Benutzer bist bekommst du nocheinmal 200.000$ oben drauf!");
SpielerInfo[SpielerInfo[playerid][pGeworbenVon]][pAccount] += 500000;
SpielerInfo[SpielerInfo[playerid][pGeworbenVon]][GeworbenerIstLevel3] = 0;
}
else
{
SendClientMessage(SpielerInfo[playerid][pGeworbenVon], COLOR_GREEN, "Jemand den du geworben hast, hat Level 3 erreicht!");
SendClientMessage(SpielerInfo[playerid][pGeworbenVon], COLOR_GREEN, "Du hast nun 300.000 $ auf dein Bankkonto bekommen");
SendClientMessage(SpielerInfo[playerid][pGeworbenVon], COLOR_GREEN, "Und du bist nun ein Premium User. :) Viel Spass weiterhin auf LSR");
SpielerInfo[SpielerInfo[playerid][pGeworbenVon]][pAccount] += 300000;
SpielerInfo[targetid][pDonateRank] = 1;
SpielerInfo[SpielerInfo[playerid][pGeworbenVon]][GeworbenerIstLevel3] = 0;
}
}
else
{
mysql_SetInt("accounts", "GeworbenerIstLevel3", SpielerInfo[playerid][pGeworbenerIstLevel3], "Name", SpielerInfo[playerid][pGeworbenVon]);
}
}
}