Making an RP gamemode.
#1

I have decided to make an RP GM from scratch and I would like a development team to helpme with things and also anyone that is interested please PM me and to everyone else, Please give your suggestions

Here is the features I will try to script have:
Dynamic Faction System - admins use /fcreate and then a box comes up and have a few options
1.faction Name
2.Type - 1.Police 2.Prison Guard 3.Army 4.Gang 5.Hitman 6.Fire Department 7.Medical Department 8.Taxi
3.Duty Point
4.Skins - Maximum of 15 ranks
5.Vehicles - Maximum of 15 Vehicles
6.Ranks - Set the rank names
7.Rank Numbers - Set the amount of ranks the department will use

Dynamic Housing system - Admins use /hcreate and get a box with the following options
1.Door entrance
2.Price
3.Interior

Dynamic Business System - Players use /setupbusiness and a box comes up
1.Entrance
2.Type
3.Interior
4.Entrance Fee
5.Price

/Contract command for level 12's - Level 12 is to avoid abuse from under level 12

Paycheck System - Players have to go to the Bank to collect a paycheck

Advanced Admin System - Admins are to have like 100+ commands like
/kick /ban /permban /ajail /goto /aprison /mute

Newbie chat channel - Just like the one from SA-RP,US-RP and NG-RP
/(n)ewbie /tognewb

and other Basic RP commands - like /b /o /me /do /animlist

Phone System - Players can use /call and then type the number for example: /call 911

Give your suggestions and PM me to join my development team and they will be put in the credits

Progress So far
Код:
// Super Cool Role Play
// Made By Sean_Mcelholm
// Steal my work and DIE! >:D

#pragma unused ret_memcpy

#else

#include <a_samp>
#include <dini>
#include <dudb>
#include <djson>
#include <zcmd>

new gPlayerLogged[MAX_PLAYERS]

#define SERVER_USER_FILE "scriptfiles/%s.ini"
#define COLOR_WHITE             0xFFFFFFFF
#define FACTIONS_FILE           "Factions"
#define MAX_GROUPS

public PrepareFactionsFile(commandtype, name, skin1, skin2, skin3, skin4, skin5, skin6, Float:x, FLoat:y, Float:z,interior)
{
    new loopstring[128], otherstring[128];
    new i = 0;
    while(i <= MAX_GROUPS)
    {
        i++;
        format(loopstring, sizeof(loopstring),"Faction_%d",i);
        format(otherstring, sizeof(otherstring),"Faction_%d/FactionName",i);    djSet(FACTIONS_FILE,otherstring,"None",true);
        format(otherstring, sizeof(otherstring),"Faction_%d/CommandsType",i);   djSetInt(FACTIONS_FILE,otherstring,commandtype,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Rank1",i);  djSet(FACTIONS_FILE,otherstring,"None",true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Rank2",i);  djSet(FACTIONS_FILE,otherstring,"None",true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Rank3",i);  djSet(FACTIONS_FILE,otherstring,"None",true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Rank4",i);  djSet(FACTIONS_FILE,otherstring,"None",true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Rank5",i);  djSet(FACTIONS_FILE,otherstring,"None",true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Rank6",i);  djSet(FACTIONS_FILE,otherstring,"None",true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Rank7",i);  djSet(FACTIONS_FILE,otherstring,"None",true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Rank8",i);  djSet(FACTIONS_FILE,otherstring,"None",true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Rank9",i);  djSet(FACTIONS_FILE,otherstring,"None",true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Rank10",i);  djSet(FACTIONS_FILE,otherstring,"None",true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Rank11",i);  djSet(FACTIONS_FILE,otherstring,"None",true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Rank12",i);  djSet(FACTIONS_FILE,otherstring,"None",true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Rank13",i);  djSet(FACTIONS_FILE,otherstring,"None",true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Rank14",i);  djSet(FACTIONS_FILE,otherstring,"None",true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Rank15",i);  djSet(FACTIONS_FILE,otherstring,"None",true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Skin1",i);  djSetInt(FACTIONS_FILE,otherstring,skin1,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Skin2",i);  djSetInt(FACTIONS_FILE,otherstring,skin2,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Skin3",i);  djSetInt(FACTIONS_FILE,otherstring,skin3,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Skin4",i);  djSetInt(FACTIONS_FILE,otherstring,skin4,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Skin5",i);  djSetInt(FACTIONS_FILE,otherstring,skin5,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Skin6",i);  djSetInt(FACTIONS_FILE,otherstring,skin6,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Skin7",i);  djSetInt(FACTIONS_FILE,otherstring,skin6,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Skin8",i);  djSetInt(FACTIONS_FILE,otherstring,skin6,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Skin9",i);  djSetInt(FACTIONS_FILE,otherstring,skin6,true)
        format(otherstring, sizeof(otherstring),"Faction_%d/Skin10",i);  djSetInt(FACTIONS_FILE,otherstring,skin6,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Skin11",i);  djSetInt(FACTIONS_FILE,otherstring,skin6,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Skin12",i);  djSetInt(FACTIONS_FILE,otherstring,skin6,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Skin13",i);  djSetInt(FACTIONS_FILE,otherstring,skin6,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Skin14",i);  djSetInt(FACTIONS_FILE,otherstring,skin6,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Skin15",i);  djSetInt(FACTIONS_FILE,otherstring,skin6,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/X",i);  djSetFloat(FACTIONS_FILE,otherstring,x,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Y",i);  djSetFloat(FACTIONS_FILE,otherstring,y,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Z",i);  djSetFloat(FACTIONS_FILE,otherstring,z,true);
        format(otherstring, sizeof(otherstring),"Faction_%d/Interior",i);   djSetInt(FACTIONS_FILE,otherstring,interior,true);
        djCommit(FACTIONS_FILE);
        LoadFactions();
    }
}

public LoadFactions()
{
    new string[128], otherstring[128];
    new i = 0;
    while(i <= MAX_GROUPS)
    {
        i++;
        format(string, sizeof(string),"Faction_%d",i);
        if(djIsSet(FACTIONS_FILE, string))
        {
            new factionname[128], rankname1[128],rankname2[128],rankname3[128],rankname4[128],rankname5[128],rankname6[128];
            format(otherstring, sizeof(otherstring),"Faction_%d/FactionName",i); format(factionname,sizeof(factionname),"%s", dj(FACTIONS_FILE, otherstring));
            format(otherstring, sizeof(otherstring),"Faction_%d/CommandsType",i); FactionInfo[i][fCommandsType] = djInt(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/Rank1",i); format(rankname1,sizeof(rankname1),"%s", dj(FACTIONS_FILE, otherstring));
            format(otherstring, sizeof(otherstring),"Faction_%d/Rank2",i); format(rankname2,sizeof(rankname2),"%s", dj(FACTIONS_FILE, otherstring));
            format(otherstring, sizeof(otherstring),"Faction_%d/Rank3",i); format(rankname3,sizeof(rankname3),"%s", dj(FACTIONS_FILE, otherstring));
            format(otherstring, sizeof(otherstring),"Faction_%d/Rank4",i); format(rankname4,sizeof(rankname4),"%s", dj(FACTIONS_FILE, otherstring));
            format(otherstring, sizeof(otherstring),"Faction_%d/Rank5",i); format(rankname5,sizeof(rankname5),"%s", dj(FACTIONS_FILE, otherstring));
            format(otherstring, sizeof(otherstring),"Faction_%d/Rank6",i); format(rankname6,sizeof(rankname6),"%s", dj(FACTIONS_FILE, otherstring));
            format(otherstring, sizeof(otherstring),"Faction_%d/Rank7",i); format(rankname6,sizeof(rankname6),"%s", dj(FACTIONS_FILE, otherstring));
            format(otherstring, sizeof(otherstring),"Faction_%d/Rank8",i); format(rankname6,sizeof(rankname6),"%s", dj(FACTIONS_FILE, otherstring));
            format(otherstring, sizeof(otherstring),"Faction_%d/Rank9",i); format(rankname6,sizeof(rankname6),"%s", dj(FACTIONS_FILE, otherstring));
            format(otherstring, sizeof(otherstring),"Faction_%d/Rank10",i); format(rankname6,sizeof(rankname6),"%s", dj(FACTIONS_FILE, otherstring));
            format(otherstring, sizeof(otherstring),"Faction_%d/Rank11",i); format(rankname6,sizeof(rankname6),"%s", dj(FACTIONS_FILE, otherstring));
            format(otherstring, sizeof(otherstring),"Faction_%d/Rank12",i); format(rankname6,sizeof(rankname6),"%s", dj(FACTIONS_FILE, otherstring));
            format(otherstring, sizeof(otherstring),"Faction_%d/Rank13",i); format(rankname6,sizeof(rankname6),"%s", dj(FACTIONS_FILE, otherstring));
            format(otherstring, sizeof(otherstring),"Faction_%d/Rank14",i); format(rankname6,sizeof(rankname6),"%s", dj(FACTIONS_FILE, otherstring));
            format(otherstring, sizeof(otherstring),"Faction_%d/Rank15",i); format(rankname6,sizeof(rankname6),"%s", dj(FACTIONS_FILE, otherstring));
			format(otherstring, sizeof(otherstring),"Faction_%d/Skin1",i); FactionInfo[i][fSkin1] = djInt(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/Skin2",i); FactionInfo[i][fSkin2] = djInt(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/Skin3",i); FactionInfo[i][fSkin3] = djInt(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/Skin4",i); FactionInfo[i][fSkin4] = djInt(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/Skin5",i); FactionInfo[i][fSkin5] = djInt(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/Skin6",i); FactionInfo[i][fSkin6] = djInt(FACTIONS_FILE, otherstring)
            format(otherstring, sizeof(otherstring),"Faction_%d/Skin7",i); FactionInfo[i][fSkin6] = djInt(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/Skin8",i); FactionInfo[i][fSkin6] = djInt(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/Skin9",i); FactionInfo[i][fSkin6] = djInt(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/Skin10",i); FactionInfo[i][fSkin6] = djInt(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/Skin11",i); FactionInfo[i][fSkin6] = djInt(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/Skin12",i); FactionInfo[i][fSkin6] = djInt(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/Skin13",i); FactionInfo[i][fSkin6] = djInt(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/Skin14",i); FactionInfo[i][fSkin6] = djInt(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/Skin15",i); FactionInfo[i][fSkin6] = djInt(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/X",i); FactionInfo[i][fX] = djFloat(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/Y",i); FactionInfo[i][fY] = djFloat(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/Z",i); FactionInfo[i][fZ] = djFloat(FACTIONS_FILE, otherstring);
            format(otherstring, sizeof(otherstring),"Faction_%d/Interior",i); FactionInfo[i][fInterior] = djInt(FACTIONS_FILE, otherstring);
            FactionInfo[i][fFactionName] = factionname;
            FactionInfo[i][fRank1] = rankname1;
            FactionInfo[i][fRank2] = rankname2;
            FactionInfo[i][fRank3] = rankname3;
            FactionInfo[i][fRank4] = rankname4;
            FactionInfo[i][fRank5] = rankname5;
            FactionInfo[i][fRank6] = rankname6;
            FactionInfo[i][fRank7] = rankname7;
            FactionInfo[i][fRank8] = rankname8;
            FactionInfo[i][fRank9] = rankname9;
            FactionInfo[i][fRank10] = rankname10;
            FactionInfo[i][fRank11] = rankname11;
            FactionInfo[i][fRank12] = rankname12;
            FactionInfo[i][fRank13] = rankname13;
            FactionInfo[i][fRank14] = rankname14;
            FactionInfo[i][fRank15] = rankname15;
        }
    }
    return 1;
}

forward PrepareFactionsFile(commandtype, name, skin1, skin2, skin3, skin4, skin5, skin6, skin7, skin8, skin9, skin10, skin11, skin11, skin 12, skin13, skin14, skin15 Float:x, FLoat:y, Float:z,interior);

enum fInfo
{
    fFactionName[128], //Faction Name
    fCommandsType, //Type of commands. For example "1"
    fRank1[128], // 1st rank name
    fRank2[128], // 2nd rank name
    fRank3[128], // 3rd rank name
    fRank4[128], // 4th rank name
    fRank5[128], // 5th rank name
    fRank6[128], // 6th rank name
    fRank7[128], // 7th rank name
    fRank8[128], // 8th rank name
    fRank9[128], // 9th rank name
    fRank10[128], // 10th rank name
    fSkin1, //1st skin
    fSkin2, //2nd skin
    fSkin3, //3rd skin
    fSkin4, //4th skin
    fSkin5, //5th skin
    fSkin6, //6th skin
    Float:fX, // X coordinate of faction spawn
    Float:fY, // Y coordinate of faction spawn
    Float:fZ, // Z coordinate of faction spawn
    fInterior // Interior of faction spawn
}
new FactionInfo[MAX_GROUPS][fInfo];

COMMAND:fcreate(playerid, params[])
{
    new cmd[128], string[128], otherstring[128], factionid;
    if(IsPlayerAdmin(playerid))
    {
        if(sscanf(params, "s", cmd) != 0)
        {
            return SendClientMessage(playerid, COLOR_WHITE, "USAGE: /fcreate [name | commands | ranks | skins | spawn]");
        }
        if(strcmp("name", cmd, true, 4) == 0)
        {
            new name[128];
            if(!sscanf(params, "sds", cmd, factionid, name))
            {
                if(factionid >= 1 && factionid <=20)
                {
                    new str[128];
                    format(otherstring, sizeof(otherstring),"Faction_%d/FactionName",factionid); format(string, sizeof(string), "%s", name);    djSet(FACTIONS_FILE,otherstring,string,true);
                    djCommit(FACTIONS_FILE);
                    format(str, sizeof(str), "Faction [%d] name set to %s", factionid, string);
                    SendClientMessage(playerid, COLOR_WHITE, str);
                }
                else return SendClientMessage(playerid, COLOR_WHITE, "Choose faction id between 1 and 20!");
            }
            else return SendClientMessage(playerid, COLOR_WHITE, "USAGE: /fcreate name <id> <name>");
        }
        if(strcmp("commands", cmd, true, 8) == 0)
        {
            new commandtype;
            if(!sscanf(params, "sdd", cmd, factionid, commandtype))
            {
                new str[128];
                format(otherstring, sizeof(otherstring),"Faction_%d/CommandsType",factionid);   djSetInt(FACTIONS_FILE,otherstring,commandtype,true);
                djCommit(FACTIONS_FILE);
                format(str, sizeof(str), "You changed faction [%d] vommand type to [%d]", factionid, commandtype);
                SendClientMessage(playerid, COLOR_WHITE, str);
            }
            else return SendClientMessage(playerid, COLOR_WHITE, "USAGE: /afaction commands <id> <command type>");
        }
        if(strcmp("ranks", cmd, true, 5) == 0)
        {
            new rank, rankname[128];
            if(!sscanf(params, "sdds", cmd, factionid, rank, rankname))
            {
                new str[128];
                format(otherstring, sizeof(otherstring),"Faction_%d/Rank%d",factionid, rank); format(string, sizeof(string), "%s", rankname);   djSet(FACTIONS_FILE,otherstring,string,true);
                djCommit(FACTIONS_FILE);
                format(str, sizeof(str), "faction id [%d] rank%d name set to %s.", factionid, rank,  string);
                SendClientMessage(playerid, COLOR_WHITE, str);
            }
            else return SendClientMessage(playerid, COLOR_WHITE, "USAGE: /fcreate ranks <id> <rank id> <rank name>");
        }
        if(strcmp("skins", cmd, true, 5) == 0)
        {
            new slotid, skinid;
            if(!sscanf(params, "sddd", cmd, factionid, slotid, skinid))
            {
                new str[128];
                format(otherstring, sizeof(otherstring),"Faction_%d/Skin%d",factionid, slotid); djSetInt(FACTIONS_FILE,otherstring,skinid,true);
                djCommit(FACTIONS_FILE);
                format(str, sizeof(str), "faction id [%d] skin%d set to %d", factionid, slotid, skinid);
                SendClientMessage(playerid, COLOR_WHITE, str);
            }
            else return SendClientMessage(playerid, COLOR_WHITE, "USAGE: /fcreate skins <id> <slot id> <skinid>");
        }
        if(strcmp("spawn", cmd, true, 5) == 0)
        {
            if(!sscanf(params, "sd", cmd, factionid))
            {
                new str[128], Float:x, Float:y, Float:z;
                GetPlayerPos(playerid, x, y, z);
                format(otherstring, sizeof(otherstring),"Faction_%d/X",factionid);  djSetFloat(FACTIONS_FILE,otherstring,x,true);
                format(otherstring, sizeof(otherstring),"Faction_%d/Y",factionid);  djSetFloat(FACTIONS_FILE,otherstring,y,true);
                format(otherstring, sizeof(otherstring),"Faction_%d/Z",factionid);  djSetFloat(FACTIONS_FILE,otherstring,z,true);
                format(otherstring, sizeof(otherstring),"Faction_%d/Interior",factionid);   djSetInt(FACTIONS_FILE,otherstring,GetPlayerInterior(playerid),true);
                djCommit(FACTIONS_FILE);
                format(str, sizeof(str), "You changed faction [%d] spawn to %f %f %f and %d interior.", factionid, x, y, z, GetPlayerInterior(playerid));
                SendClientMessage(playerid, COLOR_WHITE, str);
            }
            else return SendClientMessage(playerid, COLOR_WHITE, "USAGE: /fcreate spawn <id>");
        }
    }
    return 1;
}

main()
{
	print("\n----------------------------------");
	print(" Super Cool Role Play");
	print("----------------------------------\n");
}

#endif

public OnGameModeInit()
{
	// Don't use these lines if it's a filterscript
	SetGameModeText("SC-RP V1.0");
	AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	return 1;
}

if(!fexist(FACTIONS_FILE))
    {
        print("ERROR: No Factions File! Creating new one");
        fcreate(FACTIONS_FILE);
        new commandtype, name, skin1, skin2, skin3, skin4, skin5, skin6, Float:x, FLoat:y, Float:z,interior;
        PrepareFactionsFile(commandtype, name, skin1, skin2, skin3, skin4, skin5, skin6, Float:x, FLoat:y, Float:z,interior);
    }

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)
{
	return 1;
}

gPlayerLogged[playerid] = 0;
    new name[MAX_PLAYER_NAME], file[256];
    GetPlayerName(playerid, name, sizeof(name));
    format(file, sizeof(file), SERVER_USER_FILE, name);
    if (!dini_Exists(file))
    {
        ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Welcome to Super Cool Role Play, Please Type your Password below", "Register", "Leave");
    }
    if(fexist(file))
    {
        ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Welcome to Super Cool Role Play, Please type your password below", "Login", "Leave");
    }

public OnPlayerDisconnect(playerid, reason)
{
	return 1;
}

new name[MAX_PLAYER_NAME], file[256];
    GetPlayerName(playerid, name, sizeof(name));
    format(file, sizeof(file), SERVER_USER_FILE, name);
    if(gPlayerLogged[playerid] == 1)
    {
        dini_IntSet(file, "Score", PlayerInfo[playerid][pScore]);
        dini_IntSet(file, "Money", PlayerInfo[playerid][pCash]);
        dini_IntSet(file, "AdminLevel",PlayerInfo[playerid][pAdminLevel]);
    }
    gPlayerLogged[playerid] = 0;
public OnPlayerSpawn(playerid)
{
	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("/mycommand", cmdtext, true, 10) == 0)
	{
		// Do something here
		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;
}

if (dialogid == 1)
    {
        new name[MAX_PLAYER_NAME], file[256], string[128];
        GetPlayerName(playerid, name, sizeof(name));
        format(file, sizeof(file), SERVER_USER_FILE, name);
        if(!response) return Kick(playerid);
        if (!strlen(inputtext)) return
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Welcome to Super Cool Role Play", "Please Type your Password below", "Register", "Leave");
        dini_Create(file);
        dini_IntSet(file, "Password", udb_hash(inputtext));
        dini_IntSet(file, "AdminLevel",PlayerInfo[playerid][pAdminLevel] = 0);
        dini_IntSet(file, "Money",PlayerInfo[playerid][pCash] = 500);
        dini_IntSet(file, "Score",PlayerInfo[playerid][pScore] = 0);
        format(string, 128, "[SYSTEM]: You succesfully registered the nickname %s with password %s, you have been auto logged in.", name, inputtext);
        SendClientMessage(playerid, COLOR_YELLOW, string);
        gPlayerLogged[playerid] = 1;
    }

if (dialogid == 2)
    {
        new name[MAX_PLAYER_NAME], file[256], string[128];
        GetPlayerName(playerid, name, sizeof(name));
        format(file, sizeof(file), SERVER_USER_FILE, name);
        if(!response) return Kick(playerid);
        if (!strlen(inputtext)) return ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Welcome to Super Cool Role Play", "Please Type your password below to Login", "Login", "Leave");
        new tmp;
        tmp = dini_Int(file, "Password");
        if(udb_hash(inputtext) != tmp) {
            SendClientMessage(playerid, COLOR_RED, "Wrong Password!");
            ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Welcome to Super Cool Role Play", "Please Type your password below to Login", "Login", "Leave");
        }
        else
        {
            gPlayerLogged[playerid] = 1;
            PlayerInfo[playerid][pAdminLevel] = dini_Int(file, "AdminLevel");
            SetPlayerScore(playerid, PlayerInfo[playerid][pScore]);
            GivePlayerMoney(playerid, dini_Int(file, "Money")-GetPlayerMoney(playerid));
            SendClientMessage(playerid,COLOR_RED, "[SYSTEM]: Successfully logged in!");
        }
    }

public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
	return 1;
}

enum pInfo
{
    pAdminLevel,
    pCash,
    pScore,
}
new PlayerInfo[MAX_PLAYERS][pInfo];
Reply
#2

what you offer for help ?
Reply
#3

I will put your name in the credits and anything, But NOT Real Money
Reply
#4

Most people don't do work, for no money...at least give them a bit of the donation money or something, come on. And are you going to get a new name? or use that corny shitty name, "Super cool Role Play" name sounds like you asked a 5 year old a good name for a server.
Reply
#5

Yea I know but I have a distrust in sending money over the internet
Reply
#6

Quote:
Originally Posted by seanny
Посмотреть сообщение
I will put your name in the credits and anything, But NOT Real Money
Quote:
Originally Posted by Steven82
Посмотреть сообщение
And are you going to get a new name? or use that corny shitty name, "Super cool Role Play" name sounds like you asked a 5 year old a good name for a server.
lol'd.
Reply
#7

Like, who would script for you for free just to get credit or admin rights on your server etc etc? Obviously they would make theyre own and even make money with that... Think about it...
Reply
#8

You want someone to put months of effort into this and then what they get is "their name in the credits". Seriously?
Reply
#9

I am working on this on my own atm, so I am NOT saying "Join my development team, LULZ"
Reply
#10

Why on earth would you post the code you've created so far if it's going to be "unique" and if you're actually going to use it?

Are you mad?
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)