Problem?
#1

Okay so I am doing an adminscript inside my game mode. This is what my script looks like:

Код:
#include <a_samp>
#include <dini>

#define GREY 0x99999999
#define GREEN 0x33AA33AA
#define YELLOW 0xFFFF00AA
#define WHITE 0xFFFFFFAA
#define LIGHTBLUE 0x33CCFFAA
#define ORANGE 0xFF9900AA

new maxinumber = 5;

enum gPInfo
{
	Logged,
	Regged,
	Level
};
new PInfo[MAX_PLAYERS][gPInfo];

dcmd_register(playerid,params[])
{
    new file[256],n[MAX_PLAYER_NAME];
    GetPlayerName(playerid,n,MAX_PLAYER_NAME);
    format(file,sizeof(file),"MyAdmin/Users/%s.txt",n);
    
    if(dini_Exists(file)) return SendClientMessage(playerid,YELLOW,"ERROR: You are already registered.");
    if(PInfo[playerid][Regged] == 1) return SendClientMessage(playerid,YELLOW,"ERROR: You are already registered.");
    if(PInfo[playerid][Logged] == 1) return SendClientMessage(playerid,YELLOW,"ERROR: You are already registered and logged in.")
    if(strlen(params))
    {
        if(!dini_Exists(file))
        {
        dini_Create(file);
            dini_Set(file,"Password",params);
            dini_IntSet(file,"Regged",1);
            dini_IntSet(file,"Logged",0);
            dini_IntSet(file,"Level",0);
            SendClientMessage(playerid,GREEN,"Congratulations, you have just registered, please use /login");
            PInfo[playerid][Regged] = 1;
            return 1;
        }
            else
    {
        SendClientMessage(playerid,WHITE,"USAGE: /register <Password>");
        return 1;
    }
    return 1;
}

dcmd_login(playerid,params[])
{
    new file[256],n[MAX_PLAYER_NAME];
    GetPlayerName(playerid,n,MAX_PLAYER_NAME);
    format(file,sizeof(file),"MyAdmin/Users/%s.txt",n);
    if(!dini_Exists(file)) return SendClientMessage(playerid,WHITE,"ERROR: You are not registered! Please /register");
    if(PInfo[playerid][Logged] == 1) return SendClientMessage(playerid,WHITE,"ERROR: You are already logged in.");
    if(PInfo[playerid][Regged] == 0) return SendClientMessage(playerid,WHITE,"ERROR: You are not registered! Please /register");
    if(strlen(params))
    {
    if(strcmp(params,pass,false) != 0)
            {
                SendClientMessage(playerid,WHITE,"ERROR: Incorrect Password!");
            }
            
            else
            {
                dini_IntSet(file,"Logged",1);
                PInfo[playerid][Logged] = 1;
                PInfo[playerid][Level] = dini_Int(file,"Level");
                SendClientMessage(playerid,GREEN,"You are now logged in.");
                return 1;
            }
                 }
    else
    {
        SendClientMessage(playerid,WHITE,"USAGE: /login <Password>");
        return 1;
    }
    return 1;
}
main()
{

    switch(maxinumber)
{
	case 2:
	{
		print("We havce succesfully printed the number 2.");
	}
	default:
	{
		print("Failed at printing the number 2.");
	}
}
	printf("Max shows us the number: %d", maxinumber);
	print("\n----------------------------------");
	print(" Blank Gamemode by your name here");
	print("----------------------------------\n");
}

public OnGameModeInit()
{
	SetGameModeText("My Gamemode");
	
	// Skins
	AddPlayerClass(121,1541.5951,-1675.5557,13.5529,88.8843,0,0,0,0,0,0); // Spawn Location | LSPD
	
	// Vehicles
	AddStaticVehicle(560,1669.0746,-1707.2886,15.3153,90.6526,1,1); // Sultan 1
	AddStaticVehicle(560,1669.5204,-1717.3206,15.3143,91.1036,1,1); // Sultan2 in garage
	AddStaticVehicle(560,1669.7122,-1697.5214,15.3145,87.8738,1,1); // Sultan3 in garage
	AddStaticVehicle(522,1658.0809,-1693.5759,15.1782,179.8888,1,1); // NRG-500 in garage
	return 1;
}

public OnGameModeExit()
{
	return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
	SetPlayerPos(playerid, -1995.1300,655.7142,145.8565);
	SetPlayerCameraPos(playerid, -1990.8157,655.0879,145.3203);
	SetPlayerCameraLookAt(playerid, -1995.1300,655.7142,145.8565);
	return 1;
}

public OnPlayerConnect(playerid)
{
  PInfo[playerid][Logged] = 0;
  PInfo[playerid][Regged] = 0;
  PInfo[playerid][Level] = 0;
  
  new n[MAX_PLAYER_NAME], file[256];
    GetPlayerName(playerid,n,sizeof(n));
    format(file,sizeof(file),"MyAdmin/Users/%s.txt",n);

  new pname[MAX_PLAYER_NAME], Msg[128];
	
  GetPlayerName(playerid, pname, sizeof(pname));
  format(Msg, sizeof(Msg), "%s(%d) Has Joined The Server", pname, playerid);
  SendClientMessageToAll(GREY, Msg);
  return 1;
}

public OnPlayerDisconnect (playerid, reason)
{
	new n[MAX_PLAYER_NAME], file[256];
	    GetPlayerName(playerid,n,sizeof(n));
	    format(file,sizeof(file),"MyAdmin/Users/%s.txt",n);
	    PInfo[playerid][Logged] = 0;
	            if(dini_Exists(file))
	            {
	                dini_IntSet(file,"Logged",0);
	                return 1;
	            }

	new pname[MAX_PLAYER_NAME], Msg[128];
	GetPlayerName(playerid, pname, sizeof(pname));
	switch(reason)
	{
		case 0: format(Msg, sizeof(Msg), "%s(%d) Has Left The Server (Timeout)", pname, playerid);
		case 1: format(Msg, sizeof(Msg), "%s(%d) Has Left The Server (Quit)", pname, playerid);
		case 2: format(Msg, sizeof(Msg), "%s(%d) Has Left The Server (Kicked/Banned)", pname, playerid);
	}
	SendClientMessageToAll(GREY, Msg);
	return 1;
}

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[])
{
new cmd[256],idx;
	cmd = strtok(cmdtext, idx);
	dcmd(register,8,cmdtext);
}

dcmd(login,5,cmdtext);

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;
}

if(dini_Exists(file))
	{
	    SendClientMessage(playerid,LIGHTBLUE,"You are already registered, Please use /login.");
	    PInfo[playerid][Regged] = 1;
	    PInfo[playerid][Logged] = 0;
	    return 1;
	}
	
if(!dini_Exists(file))
	{
	    SendClientMessage(playerid,LIGHTBLUE,"You are not registered, Please use /register.");
	    PInfo[playerid][Regged] = 0;
	    PInfo[playerid][Logged] = 0;
	    return 1;
	}
and when I try to compile it only warning i get is:

Код:
C:\Users\Max\Desktop\GTA San Andreas\samp03csvr_win32\gamemodes\Untitled.pwn(357) : warning 203: symbol is never used: "dcmd_register"
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


1 Warning.
and now when I try to run the server I get this:

Код:
Script[gamemodes/Untitled.amx]: Run time error 6: "Invalid Instruction"
I dont understand
please help
Reply
#2

#pragma unused dcmd_register

But this in your gamemode top
Reply
#3

Okay Thanks
Reply
#4

np dude!
Reply
#5

It still keeps crashing for

Код:
runtime error 6: "Invalid Instruction"
and script is:

Код:
#include <a_samp>
#include <dini>

#define GREY 0x99999999
#define GREEN 0x33AA33AA
#define YELLOW 0xFFFF00AA
#define WHITE 0xFFFFFFAA
#define LIGHTBLUE 0x33CCFFAA
#define ORANGE 0xFF9900AA

new maxinumber = 5;

enum gPInfo
{
	Logged,
	Regged,
	Level
};
new PInfo[MAX_PLAYERS][gPInfo];

dcmd_register(playerid,params[])
{
	#pragma unused dcmd_register
    new file[256],n[MAX_PLAYER_NAME];
    GetPlayerName(playerid,n,MAX_PLAYER_NAME);
    format(file,sizeof(file),"MyAdmin/Users/%s.txt",n);
    
    if(dini_Exists(file)) return SendClientMessage(playerid,YELLOW,"ERROR: You are already registered.");
    if(PInfo[playerid][Regged] == 1) return SendClientMessage(playerid,YELLOW,"ERROR: You are already registered.");
    if(PInfo[playerid][Logged] == 1) return SendClientMessage(playerid,YELLOW,"ERROR: You are already registered and logged in.")
    if(strlen(params))
    {
        if(!dini_Exists(file))
        {
        dini_Create(file);
            dini_Set(file,"Password",params);
            dini_IntSet(file,"Regged",1);
            dini_IntSet(file,"Logged",0);
            dini_IntSet(file,"Level",0);
            SendClientMessage(playerid,GREEN,"Congratulations, you have just registered, please use /login");
            PInfo[playerid][Regged] = 1;
            return 1;
        }
            else
    {
        SendClientMessage(playerid,WHITE,"USAGE: /register <Password>");
        return 1;
    }
    return 1;
}

dcmd_login(playerid,params[])
{
    new file[256],n[MAX_PLAYER_NAME];
    GetPlayerName(playerid,n,MAX_PLAYER_NAME);
    format(file,sizeof(file),"MyAdmin/Users/%s.txt",n);
    if(!dini_Exists(file)) return SendClientMessage(playerid,WHITE,"ERROR: You are not registered! Please /register");
    if(PInfo[playerid][Logged] == 1) return SendClientMessage(playerid,WHITE,"ERROR: You are already logged in.");
    if(PInfo[playerid][Regged] == 0) return SendClientMessage(playerid,WHITE,"ERROR: You are not registered! Please /register");
    if(strlen(params))
    {
    if(strcmp(params,pass,false) != 0)
            {
                SendClientMessage(playerid,WHITE,"ERROR: Incorrect Password!");
            }
            
            else
            {
                dini_IntSet(file,"Logged",1);
                PInfo[playerid][Logged] = 1;
                PInfo[playerid][Level] = dini_Int(file,"Level");
                SendClientMessage(playerid,GREEN,"You are now logged in.");
                return 1;
            }
                 }
    else
    {
        SendClientMessage(playerid,WHITE,"USAGE: /login <Password>");
        return 1;
    }
    return 1;
}
main()
{

    switch(maxinumber)
{
	case 2:
	{
		print("We havce succesfully printed the number 2.");
	}
	default:
	{
		print("Failed at printing the number 2.");
	}
}
	printf("Max shows us the number: %d", maxinumber);
	print("\n----------------------------------");
	print(" Blank Gamemode by your name here");
	print("----------------------------------\n");
}

public OnGameModeInit()
{
	SetGameModeText("My Gamemode");
	
	// Skins
	AddPlayerClass(121,1541.5951,-1675.5557,13.5529,88.8843,0,0,0,0,0,0); // Spawn Location | LSPD
	
	// Vehicles
	AddStaticVehicle(560,1669.0746,-1707.2886,15.3153,90.6526,1,1); // Sultan 1
	AddStaticVehicle(560,1669.5204,-1717.3206,15.3143,91.1036,1,1); // Sultan2 in garage
	AddStaticVehicle(560,1669.7122,-1697.5214,15.3145,87.8738,1,1); // Sultan3 in garage
	AddStaticVehicle(522,1658.0809,-1693.5759,15.1782,179.8888,1,1); // NRG-500 in garage
	return 1;
}

public OnGameModeExit()
{
	return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
	SetPlayerPos(playerid, -1995.1300,655.7142,145.8565);
	SetPlayerCameraPos(playerid, -1990.8157,655.0879,145.3203);
	SetPlayerCameraLookAt(playerid, -1995.1300,655.7142,145.8565);
	return 1;
}

public OnPlayerConnect(playerid)
{
  PInfo[playerid][Logged] = 0;
  PInfo[playerid][Regged] = 0;
  PInfo[playerid][Level] = 0;
  
  new n[MAX_PLAYER_NAME], file[256];
    GetPlayerName(playerid,n,sizeof(n));
    format(file,sizeof(file),"MyAdmin/Users/%s.txt",n);

  new pname[MAX_PLAYER_NAME], Msg[128];
	
  GetPlayerName(playerid, pname, sizeof(pname));
  format(Msg, sizeof(Msg), "%s(%d) Has Joined The Server", pname, playerid);
  SendClientMessageToAll(GREY, Msg);
  return 1;
}

public OnPlayerDisconnect (playerid, reason)
{
	new n[MAX_PLAYER_NAME], file[256];
	    GetPlayerName(playerid,n,sizeof(n));
	    format(file,sizeof(file),"MyAdmin/Users/%s.txt",n);
	    PInfo[playerid][Logged] = 0;
	            if(dini_Exists(file))
	            {
	                dini_IntSet(file,"Logged",0);
	                return 1;
	            }

	new pname[MAX_PLAYER_NAME], Msg[128];
	GetPlayerName(playerid, pname, sizeof(pname));
	switch(reason)
	{
		case 0: format(Msg, sizeof(Msg), "%s(%d) Has Left The Server (Timeout)", pname, playerid);
		case 1: format(Msg, sizeof(Msg), "%s(%d) Has Left The Server (Quit)", pname, playerid);
		case 2: format(Msg, sizeof(Msg), "%s(%d) Has Left The Server (Kicked/Banned)", pname, playerid);
	}
	SendClientMessageToAll(GREY, Msg);
	return 1;
}

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[])
{
new cmd[256],idx;
	cmd = strtok(cmdtext, idx);
	dcmd(register,8,cmdtext);
}

dcmd(login,5,cmdtext);

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;
}

if(dini_Exists(file))
	{
	    SendClientMessage(playerid,LIGHTBLUE,"You are already registered, Please use /login.");
	    PInfo[playerid][Regged] = 1;
	    PInfo[playerid][Logged] = 0;
	    return 1;
	}
	
if(!dini_Exists(file))
	{
	    SendClientMessage(playerid,LIGHTBLUE,"You are not registered, Please use /register.");
	    PInfo[playerid][Regged] = 0;
	    PInfo[playerid][Logged] = 0;
	    return 1;
	}
but no errors.

can someone help
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)