Habe noch einen GM auf meinem PC an dem ich auch heute noch seh viel arbeite. Velecher auch genau diese Reallife faktoren beinhaltet
Dieser wir aber bereits für ein anderes Projext fertiggestellt.
(Postfach wieder leer :D)
Habe noch einen GM auf meinem PC an dem ich auch heute noch seh viel arbeite. Velecher auch genau diese Reallife faktoren beinhaltet
Dieser wir aber bereits für ein anderes Projext fertiggestellt.
(Postfach wieder leer :D)
@ #ZXG
Diese Fragen habe ich mir auch immer gestellt. bis ich vor c.a. 6 Monaten auf einen Server gestoßen bin der mir echt Super gefällt.
Wen du auf ihm spielt, hast du niemals das gefühl das er nur annehernt an GF angelehnt ist.
Er ist wirklich ein Reiner Selfmade und sowasvon Affengeil das ich Täglich nauf ihm am Suchten bin!
Dort ist man nicht mit einem Klick in einem Beruf. Dort muss man eine ausführliche Bewerbung zur jeweiligen Firma im Forum schreiben.
Für gemappte sachen gibt es ebendfalls eine firma namens Big Constructions. diese Mappt und fügt die Mapps auch im server ein!
Ich kann nur sagen schaut euch den server an! Wen du interesse hast kann ich dir ja mal einen Link via PN schicken!
LOL logischerweise Samp 0.3d da du wohl kaum für andere versionen noch server Finden wirst ausevtl für 0.3c
deswegen konnte ich keinen Fehler finden -,-
Dachte schon wäre in meiner Auszeit veblödet!
Ist sehr geil, habe mir desöfteren ideen daraus verwendet
[ FILTERSCRIPT ] madAd | Adminscript | 69 Commands | GUI | 5 Adminlevel | Tolle Features
Mhh ohne dialog heutzutage schwierig, finde auch nur mit dialog
Erkläre mich für blöd, aber einen anderen Fehler finde ich da nicht, da müssen wohl die richtigen Profis drann
Sorry das ich dir nicht helfen konnte
so sollte es gehen
//Include
#include <a_samp>
#include <dini>
#include <Dudb>
//Enum
enum Info //Info ist der name des enums
{
Passwort[128],
Level,
Skin,
}
new pInfo[MAX_PLAYERS][Info];
new bool:loggedin[MAX_PLAYERS];
new spieler[MAX_PLAYER_NAME];
main()
{
print("\n----------------------------------");
print(" Blank Gamemode by your name here");
print("----------------------------------\n");
}
public OnGameModeInit()
{
SetGameModeText("Blank Script");
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
return 1;
}
public OnGameModeExit()
{
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
return 1;
}
public OnPlayerConnect(playerid)
{
new name[128], save[128]; // Dies machen wir um den Namen vom Spieler aufzuschreiben || Hiermit können wir sagen, dass etwas gespeichert werden soll
GetPlayerName(playerid,name,sizeof(name)); // Dies sagt, er soll( vom Spieler, den namen, in der größe name aufschreiben)
format(save,sizeof(save),"/Spieler/%s.ini",name); // Hier wird gechekt, wo der Spieler gespeichert ist, bzw. wo ein Spieler angelegt werden soll.
if(dini_Exists(save)) // Hier wird geprüft, ob die Datei des Spielers schon existiert.
{ // Wenn ja, sende einen Text und lade den Skin und das Geld
SendClientMessage(playerid, 0x33CCFFAA, "Willkommen bei Hot-Red-RolePlay");
SendClientMessage(playerid, 0xFFFFFFAA, "Dein Account wurde wiedererkannt.");
SendClientMessage(playerid, 0xFFFFFFAA, "Du kannst dich jetzt einloggen.");
SendClientMessage(playerid, 0xFFFFFFAA, "Benutze dazu /login [passwort].");
GivePlayerMoney(playerid,dini_Int(save,"Geld")); // Hier wird das geld dem Spieler gegeben, was er vorher hatte
SetPlayerSkin(playerid,dini_Int(save,"Skin")); // Hier wird der Skin des Spielers geladen
SetPlayerScore(playerid,dini_Int(save,"Level")); //Hier wird dein Level Geladen
}
else
{
if(!dini_Exists(save)) // Wenn kein Spieler mit dem Namen existiert
{ //Sende einen Text
SendClientMessage(playerid, 0x33CCFFAA, "Willkommen bei Hot-Red-RolePlay");
SendClientMessage(playerid, 0xFFFFFFAA, "Du hast noch keinen Account.");
SendClientMessage(playerid, 0xFFFFFFAA, "Du kannst dich jetzt registrieren.");
SendClientMessage(playerid, 0xFFFFFFAA, "Benutze dazu /register [passwort].");
}
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new name[128], save[128];// Gleiche
GetPlayerName(playerid,name,sizeof(name)); // wie
format(save,sizeof(save),"/Spieler/%s.ini",name);// oben
if(dini_Exists(save)) // steht
{
dini_IntSet(save,"Geld",GetPlayerMoney(playerid)); // speichert das aktuelle Geld, was der Spieler zum schluss hatte
dini_IntSet(save,"Skin",GetPlayerSkin(playerid)); // speichert den aktuellen Skin, welchne der Spieler zum schluss hatte
dini_IntSet(save,"Level",GetPlayerScore(playerid)); //Speichert das Level,Von dem Spieler
}
return 1;
}
public OnPlayerSpawn(playerid)
{
new name[128], save[128];// Gleiche
GetPlayerName(playerid,name,sizeof(name)); // wie
format(save,sizeof(save),"/Spieler/%s.ini",name);// oben
if(loggedin[playerid] == false) //Wenn er nicht eingeloggt ist
{
SendClientMessage(playerid, 0xAA3333AA, "Du musst dich Einloggen bevor du spawnst!");
}
SetPlayerSkin(playerid,dini_Int(save,"Skin")); //lade und setze den gespeicherten Skin
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
return 1;
}
public OnVehicleSpawn(vehicleid)
{
return 1;
}
public OnVehicleDeath(vehicleid, killerid)
{
return 1;
}
public OnPlayerText(playerid, text[])
{
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp(strget(cmdtext,0), "/register", true) == 0)
{
new save[40]; // Erstelle einen neuen String "save", wobei 40 Wörter verwendet werden können.
GetPlayerName(playerid,spieler,sizeof(spieler));
format(save, sizeof(save),"Spieler/%s.ini",spieler); //Speicherort
if(!dini_Exists(save)) // wenn der Spieler sich regestriert und es noch keine .ini Datei mit seinem Namen gibt
{
dini_Create(save); // Erstelle eine Neue .ini Datei
dini_IntSet(save,"passwort",udb_hash(strget(cmdtext,1))); // Setze in die .ini Datei(save,"dass passwort", welches er eingegeben hat) || das udb_hash verschlüsselt das Passwort in der .ini. Dazu benötigen wir die oben angegebene Include DUBD.
SendClientMessage(playerid, 0x33AA33AA, "***Dein Account wurde erfolgreich registriert***");
SendClientMessage(playerid, 0x33AA33AA, "***Nutze /login [Passwort] um dich einzuloggen***");
}
else
{
if(dini_Exists(save)) // Wenn beim regestrieren die Datei schon besteht
{
SendClientMessage(playerid, 0xAA3333AA, "Der Account ist bereits registriert");
}
}
return 1;
}
if(strcmp(strget(cmdtext,0), "/login", true) == 0)
{
new save[40], s2[256]; //gleiche wie oben
GetPlayerName(playerid,spieler,sizeof(spieler));
format(save,sizeof(save),"Spieler/%s.ini",spieler);
if(dini_Exists(save)) // wenn Datei existiert
{
s2=dini_Get(save,"passwort"); // lade das Passwort
if(strval(s2)==udb_hash(strget(cmdtext,1))) // wenn die Eingabe nach /login mit dem Passwort von der registration übereinstimmt
{
loggedin[playerid] = true; //sage dem Server, dass der Spieler eingeloggt ist.
SendClientMessage(playerid, 0x33CCFFAA, "***Du hast dich erfolgreich eingeloggt***");
SpawnPlayer(playerid);
}
else // wenn das passwort nicht stimmt
{
SendClientMessage(playerid, 0xAA3333AA, "Passwort Falsch!");
}
}
return 1;
}
return 0;
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
return 1;
}
public OnPlayerEnterCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveCheckpoint(playerid)
{
return 1;
}
public OnPlayerEnterRaceCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveRaceCheckpoint(playerid)
{
return 1;
}
public OnRconCommand(cmd[])
{
return 1;
}
public OnPlayerRequestSpawn(playerid)
{
return 1;
}
public OnObjectMoved(objectid)
{
return 1;
}
public OnPlayerObjectMoved(playerid, objectid)
{
return 1;
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
return 1;
}
public OnVehicleMod(playerid, vehicleid, componentid)
{
return 1;
}
public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
{
return 1;
}
public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
return 1;
}
public OnPlayerSelectedMenuRow(playerid, row)
{
return 1;
}
public OnPlayerExitedMenu(playerid)
{
return 1;
}
public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
{
return 1;
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
return 1;
}
public OnRconLoginAttempt(ip[], password[], success)
{
return 1;
}
public OnPlayerUpdate(playerid)
{
return 1;
}
public OnPlayerStreamIn(playerid, forplayerid)
{
return 1;
}
public OnPlayerStreamOut(playerid, forplayerid)
{
return 1;
}
public OnVehicleStreamIn(vehicleid, forplayerid)
{
return 1;
}
public OnVehicleStreamOut(vehicleid, forplayerid)
{
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
return 1;
}
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
return 1;
}
stock strget(strx[], pos, search = ' ') {
new arg, ret[128], idxx;
for (new i = 0; i < strlen(strx); i++) {
if(strx[i] == search || i == strlen(strx) || strx[i + 1] == 10) {
arg++;
if (arg == pos + 1){
ret[i-idxx] = EOS;
return ret;
} else if (arg == pos)
idxx= i+1;
}
else if (arg == pos)
ret[i - idxx] = strx[i];
}
return ret;
}
Bääm voll unübersichtlich, pack das mal in einen PWN Quelltext
ja und, WAS ist damit, Ohne informationen können wir nichts machen -,-
Haste irgendwas im script, was den User nach falscheingabe kicken soll?
evtl, gibt es dazwischen eine störung oder sowas
Poste mal die zeilen von deinem /login und alles was dazu gehört
öhmm, habeGTA IV schon auf nem PC mi nur 1 GB ram zum laufen gebracht, 2Gb reichen völlig aus
definiere mal buggen, was machen sie den bzw was nicht
Hallo,
Man kann, aber du brauchst diue samp-npc.exe nicht ausführen, das wird alles Scripttechnisch gemacht, sodass der NPC von ganz allein Connectet un im auto sizt
Das schaut dann ungefär so aus!
public OnGameModeInit()
{
ConnectNPC("Busbot","busbot");
new car_busbot;
car_busbot = CreateVehicle(431, 1000.0,1000.0, 1000.0, 0.0, 10, 1, -1);
//ConnectNPC("Bedienung","bot");
new string[MAX_PLAYER_NAME];
new string1[MAX_PLAYER_NAME];
for(new i = 0; i < AUTOHAUSER; i++)
{
Dtc_Info[i] = CreatePickup(1210, 2, DtcSonstiges[i][0][0],DtcSonstiges[i][0][1],DtcSonstiges[i][0][2],0);
}
SetTimer("LetDoorsLocked", 1000, 1);
return true;
}
public OnPlayerConnect(playerid)
{
if(IsPlayerNPC(playerid))
{
new botname[MAX_PLAYER_NAME];
GetPlayerName(playerid, botname, sizeof(botname));
if(!strcmp(botname, "Busbot", true))//da muss das "Busbot" groß sein ;D
{
gPlayerLogged=1;//hier wird er eingeloggt
}
}
Wen dein bot nicht im Bus sizt liegt das nicht an der samp-npc.exe, sondern an deinem Script
Dafür gibts doch ein Filterscript such doch mal ein bisschen warum sollen wir das immer für euch tuhen
/veh systeme gibt es genug im Showroom musste mal schauen ...
Das die spieler nicht angezeigt werden musste bei
public OnGameModeInit
ShowPlayerMarker(0); schreiben
//edit Pawn quellcode
Einfach GivePlayerWeapon(giveplayerid, waffenid, Munition); in dein waffenschein script einfügen musst natürlich Waffenid mit der gewollten waffen id austauschen und Munition mit der gewünschten munnition die der spieler bekommen soll
Hast du Selfmade oder GF?
Poste mal bitte das script von dem BIZ
Haste das selber gemappt oder ist das ein Standart Haus?
Hast du als du das script probiert hast deins rausgenommen?