Ich habe alles hoch geladen
vergewisser dich ob erstens Alle plugins da sind und zweitens auch alle scriptfiles vorhanden sind.
was auch ab und zu helfen könnte wäre die neusten plugins zu suchen ich verweise auf das streamer plugin.
Ich habe alles hoch geladen
vergewisser dich ob erstens Alle plugins da sind und zweitens auch alle scriptfiles vorhanden sind.
was auch ab und zu helfen könnte wäre die neusten plugins zu suchen ich verweise auf das streamer plugin.
das liegt an deiner virtuellen welt es sei den du bist in der vw 1 .
schau dir ganz einfach mal den code nochmal an und vergleich ihn mal mit dem syntax den ja schon kleiner_opa gepostet hatte
//edit oder das oben aufgeführte beispiel über mir
formatEx(playerid,bBlau,"Du bist ein Level aufgestiegen! Du bist nun Level %i",PlayerInfo[playerid][pLevel]);
klar das es nicht geht:
#define SendFormatedMessage(%0,%1,%2,%3) do{new _string[128]; format(_string,sizeof(_string),%2,%3); SendClientMessage(%0,%1,_string);} while(FALSE)
new bool:FALSE=false;
zu
#define formatEx(%0,%1,%2,%3) do{new _string[128]; format(_string,sizeof(_string),%2,%3); SendClientMessage(%0,%1,_string);} while(FALSE)
new bool:FALSE=false;
was auch noch gehen würde wäre das.
new str2[128];
#define formatEx(%0,%1,%2,%3) format(str2,128,%2,%3) && SendClientMessage(%0, %1, str2)
mach es dir doch ganz leicht
#define SendFormatedMessage(%0,%1,%2,%3) do{new _string[128]; format(_string,sizeof(_string),%2,%3); SendClientMessage(%0,%1,_string);} while(FALSE)
new bool:FALSE=false;
wenn du deine eigenen formatexe stock schreiben willst verwendet man dazu
numargs();
getarg(arg, index=0);
setarg(arg, index=0, value);
doch es wäre möglich da muss ich dich korrigieren und zwar mit dem audio plugin
Es ging nicht um das lernen von html und php , ich meinte das aufgegriffene Problem mit Xampp zu dem einem
das freischalten im AntiVirusprogramm gehört.
Also damit meine ich das Xampp auch von deiner Firewall oder deinem AntiVirusprogramm blockiert werden kann.
Und der andere Punkt ist das Skype den Port blockiert falls du Skype installiert haben solltest und es auch nutzt kannst du so den Port ändern.
Zitat
Im Menü -> Aktionen -> Optionen -> http://dl.dropbox.com/u/70016420/screens/200045337.png -> Haken bei "Ports 80 und 443 als Alternative für eingehende Verbindungen verwenden" entfernen
ein beispiel wäre das
new rand = random(3-1)+1;
ein beispiel
daraus kannst du auch ein stock machen
stock random(maxwert, minwert)
{
new rand = random(maxwert-minwert)+minwert;
return rand;
}
//edit
daraus wird eine beliebige zeil bis 2 herraus gesucht also entweder 0 , 1 ,2
und das wird mit der minmalen zahl addiert.
so kann auch die Summe niemals 0 betragen
weisst du das es genau an navicat liegt oder geht auch die allgemeine verbindung zur datenbank nicht
falls dies dein problem sein sollte empfehl ich dir einfach mal hier rein zu schauen
http://forum.sa-mp.de/off-topi…-lernen-2?highlight=Xampp
ich hatte das blöde problem bei xampp damals das mit der Zeit nix mehr ging also ich konnte auf locale service nicht zugreifen sei es die datenbank oder
apache also auf mein wbb forum.
Sollte es nur an navicat liegen so müsste ich passen ich arbeite damit nicht sondern mit phpadmin
entferne das tuningteil oder setz ein anderes an das fahrzeug.
AddVehicleComponent(vid,1024);
unbestimmte tunning teile füren zum crash .
Alles anzeigenOk es funktioniert jetzt, hab aber ein neues Problem, wenn ich den Server starte, startet er nicht, das liegt daran das die Datenbanken nicht gehen, ich komm auch über Navicat nicht rein, aber XAMPP ist an sowie der MySQL und sogar der Apache dienst ...
EDIT:
Hier ein Bild dazu: Ok es funktioniert jetzt, hab aber ein neues Problem, wenn ich den Server starte, startet er nicht, das liegt daran das die Datenbanken nicht gehen, ich komm auch über Navicat nicht rein, aber XAMPP ist an sowie der MySQL und sogar der Apache dienst ...
EDIT:
Hier ein Bild dazu: http://www10.pic-upload.de/17.10.12/vfnob9yveey.png
Naja es wäre sehr nett wenn du vllt noch dazu sagen würdest welches du nun genau nutzt also welches plugin ^^.
Ich hab die böse erfahrung gemacht mit dem mysql plugin von strickenkid
das man ein passwort für die mysqldatenbank braucht bei dem von BlueG
ist das nicht so
ich empfehle dir auch die tabellen entweder mit
myphp admin zu erstellen oder im script ein beispiel für das erstellen
von Tabellen im script.
format(sql,500,"CREATE TABLE IF NOT
EXISTS `pflanzen`(`ID` int(5) NOT NULL , `Name` varchar(30) NOT NULL,`X`
float NOT NULL,`Y` float NOT NULL,`Z` float NOT NULL,`Leben` int(3) NOT
NULL,`Wachstum` int(3) NOT NULL,`Wasser` int(3) NOT NULL,`Erde` int(3)
NOT NULL)");
mysql_function_query(g_ConnectionHandle,sql, false, "", "");
dabei
wird der sql befehl CREATE TABLE IF NOT EXISTS verwendet wie schon der
name sagt die tabelle wird nur erstellt wenn der name in der datenbank
der Tabelle nicht existiert.
Du hast natürlich so auch die möglichkeit auch die Tabelleeingschaft zu verändern ein beispiel aus meinem älteren carsystem.
format(sql,sizeof(sql),"CREATE TABLE IF NOT EXISTS `autos4` (`id`
int(5) NOT NULL AUTO_INCREMENT,`owner` varchar(25) NOT NULL,`model`
int(5) NOT NULL,`oamt` int(5) NOT NULL,`lock` int(5) NOT NULL,`x` float
NOT NULL,`y` float NOT NULL,`z` float NOT NULL,`a` float NOT
NULL,PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=latin1
AUTO_INCREMENT=1 ;");
mysql_query(sql);
hier wird der
wert von der id auf AUTO_INCREMENT gesetzt welches hier von 1 beginnt
pro eintrag wird der wert automatisch erhöht.
Die Tabelle arbeitet
mit der MyISAM SpeicherMethode der vorteil ist das diese so viel wie ich
gehört habe am besten sein soll besser gesagt am schnellsten.
Der
Nachteil wirkt sich dabei nun auf das AUTO_INCREMENT aus . Das heißt
wenn die tabelle mit TRUNCATE TABLE leeren würde würde der neuste
eintrag mit der weiter führenden id eingetragen. Und das CHARSET sind
die Zeichensätze.
//edit
Bei Xampp kann es gut sein das entweder der port davon besetzt ist oder deine firewall blockiert xampp
falsche include würde ich sagen und das falsche plugin du besitzt das neuste das rc7 plugin , welches auch das beste ist
da heißt es nicht mehr mysql_query sonder mysql_function_query
//edit
zum thema mysql_function_query
das native sieht so aus
mysql_function_query( connectionHandle, query[], bool:cache, callback[], format[], {Float,_}:... )
1. die verbindung wo du im script definiert hast
2. query beispiel SELECT * FROM , INSERT INTO etc...
3. ob man cachen sollen bietet sich dann nur an wenn du auch die cach funktion dazu benutzt
4. Thread also das callback es ist multithreadet es hat die gleiche funktion wie beim rc 6 oder bei dem mysql plugin von strickenkid
das OnQueryFinish callback
5.die parameter zu der funktion
Die Sonnenbrille ist ein objekt welches dem Spieler angehängt wird mit SetPlayerAttachedObject zum beispiel wäre eine gute methode
siehe: http://wiki.sa-mp.com/wiki/SetPlayerAttachedObject
entweder machst es so das der spieler das objekt selbst ansetzen soll per
http://wiki.sa-mp.com/wiki/EditAttachedObject und die jeweiligen koordinaten dann mit hilfe http://wiki.sa-mp.com/wiki/OnPlayerEditAttachedObject
raus bekommen und speichern oder du setzt es durch vordefinierte Positionen an den Spieler und in den jeweiligen slot.
also so grob außer diese else if abfragen finde ich nicht kannst es ja mal so testen.
if(strcmp(cmdtext, "/motor", true) == 0){
new car = GetPlayerVehicleID(playerid);
if(GetPlayerVehicleSeat(playerid) == 0){
if(GetVehicleModel(car) == 509 || GetVehicleModel(car) == 481 || GetVehicleModel(car) == 510) return SendClientMessage(playerid, COLOR_RED, "Du sitzt auf einem Fahrrad. Das hat keinen Motor!");
if(Tank[car] < 1) return SendClientMessage(playerid, COLOR_RED, "Der Tank ist leer. Du musst erst /tanken.");
if(Motor[car] == false){
GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(car,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
Motor[car] = true; // Setzt den Bool Motor auf true
}else{
GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(car,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
Motor[car] = false;
}
}
return 1;
}
Wenn du zufällig noch ein tutorial suchst hier wäre auch noch eins
Gehen würde das schon wenn du abfrägst welche taste er drückt und ob der spieler in der nähe dieses pickups ist.
was sich eher anbieten würde wäre immer noch OnPlayerPickUpPickup.
Frag nicht so viel learning by doing
forward SetPlayerSpawn(playerid);
public SetPlayerSpawn(playerid)
{
if(GetPVarInt(playerid,"Eingeloggt") == 1)
{
if(SInfo[playerid][pBan] == 0)
{
if(SInfo[playerid][pLeader] == 0)
{
SetSpawnInfo(playerid,0,29,2555.0,454.0,56.0,0.0,0,0,0,0,0,0);
SetPlayerInterior(playerid,0);
SetPlayerFacingAngle(playerid, 4.0557);
}
if(SInfo[playerid][pLeader] == 1)
{
SetPlayerPos(playerid,197.0630,168.4374,1003.0234); // los santos
SetPlayerInterior(playerid,3);
SetPlayerFacingAngle(playerid, 4.0557);
}
}
else
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
new string[128];
SendClientMessage(playerid,COLOR_RED,"Du bist gebannt... Mach dir gedanken warum...");
format(string,sizeof(string),"Spieler %s wollte mit seinem gebannten Account online kommen...",name);
SendClientMessageToAll(COLOR_RED,string);
Kick(playerid);
}
}else{ Kick(playerid);}
return 1;
}
hm also ich hab bei dem code keine probleme kannst es ja so nochmal testen aber das return 1; in eine else abfrage zu stecken
da return 1; den wert zurück gibt das die funktion erfolgreich war.
Alles anzeigenIPrototypeI: Ich sagte doch bei SetVehicleParamsForPlayer kommt so ein Kegeldings.
Siehe hier:
http://www.pic-upload.de/view-16471029/sa-mp-062.png.html
http://www.pic-upload.de/view-16471034/sa-mp-063.png.html
Genau das kommt dann immer...
Wenn einer weiß wie die Kegel weg gehen oder wie man es anders machen kann
Bitte schreiben![]()
Wenn du das machen würdest was ich dir gepostet habe würdest du wissen wo dein Fehler liegt.
Beispiel:
SetVehicleParamsForPlayer(Jobcar[i],forplayerid,0,1);
SetVehicleParamsForPlayer(autoid, playerid, objekt, geschlossen);
Ja das stimmt siehe hier
http://wiki.sa-mp.com/wiki/Category:File_Functions
diese functionen sind in der file.inc enthalten , aber wenn du diese benutzen willst da du meinst das diese schneller oder besser sind als dini dann rate ich dir eher
y_ini oder SII oder andere filesystem zu benutzen im Englischen Forum gibts genug zur auswahl.
Dann setzt du wohl die falschen variabeln
eine möglichkeit wäre es mit
public OnVehicleStreamIn(vehicleid, forplayerid)
zu machen und dabei
mit SetVehicleParamsForPlayer die entsprechenden werte setzen.
schau dir mal sen Syntax an von der Function
welchen code ?
wenn du jetzt das mit dem Parameter meinst das bezieht sich auf SetPlayerCheckpoint
Syntax
SetPlayerCheckpoint(playerid, Float:x, Float:y, Float:z, Float:size)
SetPlayerCheckpoint(playerid,-2077.5774,113.1515,32.2521,88,3.0);
das letzte ist der radius die größe des checkpoints
und
public OnPlayerEnterCheckpoint(playerid)
ist ein public welche aufgerufen wird wenn ein spieler in ein checkpoint geht