Beiträge von DrMurphy


    if(newstate == PLAYER_STATE_DRIVER)
    {
    for(new i = 0; i < sizeofo(FraktionsCars); i++)
    {
    if(GetPlayerVehicleID(playerid) == FraktionsCars[i])
    {
    if(IsPlayerInFrakt(playerid,frakid))
    {
    return 1;
    }
    else
    {
    SendClientMessage(playerid,cRED,"Fehler : Du bist nicht befugt dieses Fahrzeug zu fahren !");
    RemovePlayerFromVehicle(GetPlayerVehicleID(playerid));
    return 1;
    }
    }
    }

    Ich merke schon wie du Erfahrung hast, anstat mal Google zu benutzen, hier wieder Fragen.
    Also SII ist ein Filespeicherungs"System".


    Quelle:
    [TuT]Slick's INI Include 2.0.6 Kurz SII


    Ich kenne als Speichersystem dini,mysql und sql. Das sollte wohl reichen, da dies die gängigen Systeme sind. Außerdem sagte ich, dass ich am liebsten mit dini arbeite. Die Frage, warum ich S II nicht verwende ist somit unnötig. Antwort: Ich arbeite eben am liebsten mit dini. Man muss nicht jedes Speichersystem kennen. Ich habe in der Bewerbung geschrieben, dass ich nahezu alles in SAMP umsetzen kann, man jedoch nie alles können kann. Sollte S II tatsächlich vom Team gewünscht sein, so würde ich es mir mal ansehen und eventuell erlernen. Mich wegen der Umwissenheit mit S II als "unerfahren" darzustellen ist ein Fehler. Da wir hier jedoch freie Meinungsäußerung haben, kann ich daran auch nichts ändern.


    mfg

    Guten Abend zusammen,
    hiermit möchte ich mich als Scripter für ein Reallife/Roleplay Projekt anbieten. Ich bin schon länger auf der Suche nach einem solchen Projekt und hoffe nun hier ein passendes Team zu finden.


    [tabmenu]


    [tab='Über mich']
    Mein Name ist Jan und ich bin in gut einem Monat 17 Jahre jung. SAMP spiele ich nun schon seit etwa 3 Jahren, wobei ich bereits seit 2,5 Jahren scripte. Ich besuche die 10. Klasse des Gymnasiums und strebe eine Karriere als Informatiker an. Nebenbei treffe ich mich gerne mit Freunden oder zocke mit ihnen. Manchmal gehe ich auch mit ihnen ins Kino oder Schwimmbad.


    Ich war schon in mehreren Teams als Scripter tätig, jedoch sind diese Projekte an verschiedenen Gründen gescheitert. Oftmals lag es an Zeitdruck, welcher auf mich ausgeübt wurde, oder manchmal auch an Geldproblemen. Durch diese vielen Rückschläge habe ich nun meine Vorraussetzungen immer weiter ausgebaut, um den Anforderungsstandart etwas anzuheben.


    [tab='Referenzen']
    Ich scripte nun schon seit 2,5 Jahren. Zudem belege ich in der Schule den Kurs Informatik, welcher mir weitere Fähigkeiten verschafft. Mittlerweile habe ich einen Punkt erreicht, an dem ich behaupten kann, dass ich fast alle Probleme lösen und alle fast alle Vorstellungen der Projektleiter erfüllen kann. Man kann nie alles können, jedoch kann man sein Wissen stetig erweitern, was mir ebenfalls nicht schwer fällt. Ich sollte jedoch erwähnen, dass ich ungerne mit MySQL arbeite. Ich bin zwar in der Lage etwas mit MySQL zu erstellen, jedoch dauert dies meist deutlich länger als mit dini und ist für mich auch oft nervig. Ein Server mit dini wird oft als "schlecht" dargestellt. Ich kann dazu nur folgendes sagen: Wer einen Server wegen dem Gebrauch von dini als "schlecht" bezeichnet hat selbst nur wenig Ahnung davon. Auch mit dini kann man die Daten ebenso sicher und schnell wie mit MySQL verarbeiten. Man muss nur wissen, wie man dies sauber und fehlerfrei macht.


    Hier im Forum habe ich zwei Systeme veröffentlicht, welche ich nun als Referenzen vorweisen kann:
    Dynamisches Haussystem (umfangreich)
    Dynamisches Pickupsystem


    [tab='Aktivität']
    Wie bereits gesagt, bin ich in der 10. Klasse des Gymnasiums, wodurch mir viel Zeit genommen wird. In der Woche bin ich dadurch erst um ca. 17 Uhr am PC. Außerdem muss man sagen, dass ein SAMP Projekt lange dauert, bis es vollendet ist. Man kann nicht erwarten, dass ich Tag für Tag am Script arbeiten werde, da man sonst nach 2 Wochen keine Lust mehr hat. Das Team muss also verstehen, wenn ich mir mal 2-3 Tage Pause nehme, um andere Dinge zu tun. Nach dieser Pause werde ich dann wieder am Script arbeiten und bald wieder eine Pause einlegen. Ich kann von mir behaupten, dass ich in der Zeit, in der ich am Script arbeite, schnell arbeite und dennoch sehr auf Sauberkeit und Ordnung achte, damit möglichst wenige Fehler/Buggs entstehen.


    [tab='Vorraussetzungen']
    Dies ist wohl der interessanteste Teil für mich, da ich hier einen Anforderungsstandard festlegen kann, den jedes Team erfüllen muss, bevor überhaupt die Möglichkeit besteht, mich als Scripter im Team begrüßen zu können.

    • Root oder qualitativ hochwertiger Gameserver vorhanden
    • Teamspeak 3 Server vorhanden
    • Projektleiter mindestens 16 Jahre alt
    • Webspace & WBB3 oder WBB4 Lizenz vorhanden oder kann ohne Probleme angeschafft werden
    • Verständnis für den Teil "Aktivität" meiner Vorstellung
    • passende Zeitvorstellung für das Projekt (es ist nicht nach 2 Wochen fertig :D )
    • freundlicher Umgang
    • seriöse Arbeit muss möglich sein (im TS3 muss auch mal eine ernste Stimmung herrschen)
    • Spaß am Projekt
    • Alle Rechte auf dem SAMP Server ingame
    • Keine zu stregen Vorgaben vom Team (ein Scripter braucht seine Freiheiten)
    • Adminrechte auf dem TS3 Server
    • Adminrechte im Forum
    • Benötigte Rechte auf dem Root/Gameserver (Dateien hochladen, runterladen, löschen, ändern; Server starten, stoppen)
    • Es ist ein Selfmade Reallife/Roleplay Server geplant

    [tab='Kontakt']
    Wenn ich euer Interesse wecken konnte, dann schreibt mir eine private Nachricht hier im Forum, in der ihr mir eine kleine Vorstellung eures Projekts bietet, und mir am Ende eine TS3-IP oder einen Skype-Namen hinterlasst. Sollten die Vorraussetzungen teilweise nicht erfüllt sein, so müssen diese in der Nachricht genannt und begründet werden, warum sie nicht erfüllt sind.


    [/tabmenu]


    Mit freundlichen Grüßen
    DrMurphy

    Auf den ersten Blick würde ich sagen, dass es an deiner if-Abfrage liegt:

    if(SpielerInfo[playerid][pHausKey] !=0 && strcmp(HausInfo[i][hBesitzer],SpielerName(playerid),true)==0)return SendClientMessage(playerid,COLOR_GREY,"Du besitzt schon ein Haus");


    Versuch es mal so:

    if(SpielerInfo[playerid][pHausKey] !=0)return SendClientMessage(playerid,COLOR_GREY,"Du besitzt schon ein Haus");

    Nicht schlecht, kann man selber ausbauen..


    Was ich aber nicht vesterhe ist, warum du nicht einfach machst, dass wenn man ein Pickup erstellt, dass der dann auf der jetzigen Position ist..
    Glaube beim Ausgang hast du das gemacht, aber beim Eingang nicht..


    Das Pickup vom Eingang und Ausgang wird an der Position erstellt, wo sich der Admin beim Eingeben des Befehls befindet. Die Koordinaten bei /ceingang sind nur dafür da, damit der Admin nach dem Befehl in das Interior zu der angegebenen Position teleportiert wird, damit er dort den Ausgang erstellen kann.


    Department:
    Macht nichts :D
    Für solche Fälle habe ich auch extra nochmal den kompletten Server bzw. den Ordner mit allen Dateien hochgeladen, wo bereits alles spielbereit ist.

    Guten Abend zusammen,
    bei meinem MySQL Login/Register System tritt in der mysql_log Datei folgender Fehler auf:

    Code
    [18:38:03] [ERROR] CMySQLQuery::Execute[()] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VAL' at line 1


    Ich habe mir mal in der Serverconsole die Error Codes ausgeben lassen (mit mysql_errno). Dabei stellte sich heraus, dass der Fehler an dieser Stelle auftritt:

    print("OnPlayerConnect"); //Hier startet das Callback "OnPlayerConnect"
    new query[128];
    format(query,sizeof(query),"SELECT * FROM `Spieler` WHERE Name='%s'",getPlayerName(playerid));
    //new Spieler[128];
    //format(Spieler,sizeof(Spieler),"/Spieler/%s.cfg",getPlayerName(playerid));
    mysql_tquery(dbhandle,query,"OnPlayerCheck","i",playerid);
    new e1 = mysql_errno(dbhandle);
    printf("%i",e1);
    return 1;


    Weiß dort jemand weiter?


    mfg
    DrMurphy

    B2T:
    Laut dem Video sieht das recht nützlich aus.
    Schön wäre aber vielleicht noch eine Ergänzung mit Virtuellen Welten.
    Somit wäre ein Interior auf öfter betretbar :)
    Der Code sieht recht sauber aus.

    Die Idee mit den virtuellen Welten nehme ich mal mit in die Planung für die nächste Version. Danke :)


    @manniak:
    bei pawn wird die schleife auch mit return unterbrochen.

    Dynamisches Pickup-System
    by DrMurphy V1.0


    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.


    Guten Tag zusammen,
    heute möchte ich euch mein dynamisches Pickup-System vorstellen, womit man leicht Interior Ein- und Ausgänge erstellen kann. Da es recht umständlich ist diese Pickups alle im Script zu erstellen, habe ich dieses System geschrieben. Admins können neue Pickups erstellen, welche dann in einer Datei gespeichert werden. Beim nächsten Serverstart werden die Pickups dann auch wieder geladen. Befindet man sich in der Nähe eines dynamisch erstellten Pickups und drückt die Entertaste, so wird man an die, beim Erstellen des Pickups angegebene Position, teleportiert. Ich hoffe, dass es einigen Leuten die lästige Arbeit mit den Pickups abnimmt.


    [tabmenu]


    [tab='Ingame Befehle']
    Adminbefehle:

    • /cpickup = Startet die Erstellung eines neuen Pickups
    • /ceingang [Name des Pickups] [Pickup Model] [Interior ID] [Spawn X] [Spawn Y] [Spawn Z] = Erstellt ein "Eingang"-Pickup mit dem angegebenen Namen und dem angegebenen Model. Für die weiteren Schritte wird der Admin zu der angegebenen Position und dem angegebenen Interior teleportiert.
    • /ceingangspawn = Hier wird der Spawn festgelegt, wo Spieler später spawnen, wenn sie die Entertaste beim "Eingang"-Pickup gedrückt haben.
    • /causgang [Name des Pickups] [Pickup Model] = Nun wird das "Ausgang"-Pickup mit angegebenem Namen und Model erstellt. Nun wird der Admin zum "Eingang"-Pickup zurückteleportiert.
    • /causgangspawn = Damit legt der Admin nun noch den Spawnpunkt fest, an den die Spieler teleportiert werden, wenn sie bei dem "Ausgang"-Pickup die Entertaste drücken.
    • /pabbrechen = Mit diesem Befehl wird die Erstellung eines neuen Pickups abgebrochen. Bereits erstellte "Eingang" oder "Ausgang"-Pickups bleiben jedoch vorhanden.
    • /premove = Mit diesem Befehl wird das Pickup in der Nähe des Admins gelöscht.

    Spielerbefehle:

    • Entertaste = Mit dieser Taste kann sich der Spieler zu dem, vom Admin angegebenen Punkt, teleportieren, wenn er sich in der Nähe eines dynamisches Pickups befindet.

    [tab='Kurze Übersicht']
    Ingame Management durch Admins: (/rcon login)

    • Pickups erstellen
    • Pickups löschen

    Ingame Management durch Spieler:

    • Pickups nutzen (Entertaste)


    [tab='Dateien des Systems']
    Die Pickup-Datei:

    • Hier werden alle Informationen über das jeweilige Pickup gespeichert. Die Punkte sind selbsterklärend, weshalb hier keine genauere Erklärung notwendig ist.

    [/tabmenu]


    Vorhandene Buggs:

    • Derzeit sind keine Buggs bekannt

    Planungen für die nächste Version:

    • Mögliche Eingabe einer virtuellen Welt bei Erstellung eines neuen Pickups


    Vorraussetzungen für die Funktionalität des Systems:

    • dini Include vorhanden
    • sscanf2 Include vorhanden
    • sscanf Plugin installiert
    • Folgende Ordner im scriptfiles Ordner angelegt: DPickups

    Download:
    Kompletter Serverordner 0.3z: http://www.file-upload.net/dow….0--Server-0.3z-.rar.html
    Ordner mit allen notwendigen Dateien: http://www.file-upload.net/dow…0--Alle-Dateien-.rar.html
    Nur das Filterscript: http://www.file-upload.net/dow…hy-V1.0--Script-.rar.html
    Pastebin: http://pastebin.com/e5SAvJ1B

    Ich freue mich über Verbesserungsvorschläge und Bugmeldungen.


    Mit freundlichen Grüßen
    DrMurphy