Jump to content
  • 0

Respect Points help!!


xxSPEEDYxx

Question

salls alls am incercat sa fac si eu un fs in care un player cand da TAB si da click pe player sa ii apara un dialog cu respect points...in care cand selecteaza +1 respect Point sau -1 Respect Point si asa playeri isi pot da RP....

am fakt eu ceva dar nu am stiut cum sa fac urmatoarele + ca imi dadea errori:

As vrea sa fie asa ca un player nu poate sa dea + sau - rp daca a dat deja numai intr-o ora!
aici ii si codu pls AJUTATIMA!!! :blank:
#include <a_samp>
#include <Dini>
#include <sscanf>

#define PlayerFile                  "RP/%s.ini"
#pragma unused strtok

#define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1

#define Red 0xFF0000FF
#define Grey 0xAFAFAFAA
#define Green 0x33AA33AA
#define Yellow 0xFFFF00AA
#define White 0xFFFFFFAA
#define Blue 0x0000BBAA
#define Lightblue 0x33CCFFAA
#define Orange 0xFF9900AA
#define Lime 0x10F441AA
#define Magenta 0xFF00FFFFT
#define Navy 0x000080AA
#define Aqua 0xF0F8FFAA
#define Crimson 0xDC143CAA
#define Black 0x000000AA
#define Brown 0XA52A2AAA
#define Gold 0xB8860BAA
#define Limegreen 0x32CD32AA

#define RP 250

enum PLAYER_MAIN
{
   Rp
}

new giveplayerid, rp;
new clickedplayer[ MAX_PLAYER_NAME ];
new pInfo[MAX_PLAYERS][ PLAYER_MAIN ];
public OnPlayerConnect( playerid )
{
 	new file[100],Name[ MAX_PLAYER_NAME ],Ip[ 16 ]; GetPlayerName( playerid,Name,sizeof( Name ) ); GetPlayerIp( playerid,Ip,sizeof( Ip ) ); format( file,sizeof( file ),PlayerFile,Name );
	if(!dini_Exists( file ) ) {
	    dini_Create( file );
		dini_IntSet( file,"RP", pInfo[ playerid ][ Rp ] );
	}
	pInfo[playerid][Rp] = dini_Int(file,"RP");
	return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
	new file[100],Name[ MAX_PLAYER_NAME ],Ip[ 16 ]; GetPlayerName( playerid,Name,sizeof( Name ) ); GetPlayerIp( playerid,Ip,sizeof( Ip ) ); format( file,sizeof( file ),PlayerFile,Name );
	dini_IntSet( file,"RP", pInfo[ playerid ][ Rp ] );
	return 1;
}

public OnPlayerCommandText(playerid, cmdtext[] )
{
    dcmd(setrp, 5, cmdtext );
    dcmd(myrp, 4, cmdtext );
    return 0;
}

dcmd_myrp( playerid, params[] )
{
#pragma unused params
new string[ 126 ];
format( string, sizeof( string ), "You have %d Respect Points!", pInfo[ playerid ][ Rp ] );
SendClientMessage( playerid, Limegreen, string );
return 1;
}

dcmd_setrp( playerid, params[] )
{
	if( IsPlayerAdmin(playerid) == 0 ) return SendClientMessage(playerid, Red, "ERROR : Only admins can use that command!");
	if(sscanf(params, "ud", giveplayerid, rp)) return SendClientMessage(playerid, Orange, "USAGE : /setrespectpoints [playerid] [rp]");
	if( giveplayerid == INVALID_PLAYER_ID ) return SendClientMessage(playerid, Red, "ERROR : That player is not connected!");

	new string[ 156 ],file[ 100 ],Name[ MAX_PLAYER_NAME ],Ip[ 16 ],name[ MAX_PLAYER_NAME ]; GetPlayerName( giveplayerid, name, sizeof( name ) );GetPlayerName( playerid,Name,sizeof( Name ) ); GetPlayerIp( playerid,Ip,sizeof( Ip ) ); format( file,sizeof( file ),PlayerFile,Name );
	format( string, sizeof( string ), "You have succesfully setted %s Rp to %d!", name, rp );
	SendClientMessage(playerid, Limegreen, string);
	format( string, sizeof( string ), "Admin %s has setted your Rp to %d!", Name, rp );
	SendClientMessage( giveplayerid, Limegreen, string );
	pInfo[ giveplayerid ][ Rp ] = rp;
	dini_IntSet( file,"RP", pInfo[ giveplayerid ][ Rp ]);
	return 1;
}

public OnPlayerClickPlayer( playerid, clickedplayerid, source )
{
	ShowPlayerDialog(playerid, 9024, 2, "RespectPoints", "+1 Respect Point\n-1 Respect Point", "Select", "Cancel");
    return 1;
}

public OnDialogResponse( playerid, dialogid, response, listitem, inputtext[] )
{
if( dialogid == RP )
	{
		if( response )
		{
			if( listitem == 0 )
			{
			if (pInfo[ clickedplayer ][ Rp ] >= 1)
            {
            pInfo[ clickedplayer ][ Rp ] += 1;
            SendClientMessage( playerid,Yellow, "You added +1 respect points to %s", clickedplayer );
            } else
            {
            SendClientMessage( playerid, Yellow, "You cand add respect points in only 2 hours!" );
            }
			}
			if( listitem == 1 )
			{
			if (pInfo[ clickedplayer ][ Rp ] >= 1 )
            {
            pInfo[ clickedplayer ][ Rp ] -= 1;
            SendClientMessage( playerid,Yellow, "You added -1 respect points to %s", clickedplayer );
            } else
            {
            SendClientMessage( playerid, Yellow, "You cand add respect points in only 2 hours!" );
			}
			}

		}
	return 1;
}

Fara reclama in semnatura!

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

Pentru a reusit sa faci chestia cu ora, iti trebuie un calcul cu GetTickRate();

adik cum fac??? :undecided:

asteas errorile:


C:\Documents and Settings\user\My Documents\RDU&FS&Maps&Servers\Filterscripts\Drugs.pwn(102) : error 033: array must be indexed (variable "clickedplayer")
C:\Documents and Settings\user\My Documents\RDU&FS&Maps&Servers\Filterscripts\Drugs.pwn(104) : error 033: array must be indexed (variable "clickedplayer")
C:\Documents and Settings\user\My Documents\RDU&FS&Maps&Servers\Filterscripts\Drugs.pwn(105) : warning 202: number of arguments does not match definition
C:\Documents and Settings\user\My Documents\RDU&FS&Maps&Servers\Filterscripts\Drugs.pwn(113) : error 033: array must be indexed (variable "clickedplayer")
C:\Documents and Settings\user\My Documents\RDU&FS&Maps&Servers\Filterscripts\Drugs.pwn(115) : error 033: array must be indexed (variable "clickedplayer")
C:\Documents and Settings\user\My Documents\RDU&FS&Maps&Servers\Filterscripts\Drugs.pwn(116) : warning 202: number of arguments does not match definition
C:\Documents and Settings\user\My Documents\RDU&FS&Maps&Servers\Filterscripts\Drugs.pwn(124) : warning 217: loose indentation
C:\Documents and Settings\user\My Documents\RDU&FS&Maps&Servers\Filterscripts\Drugs.pwn(126) : error 030: compound statement not closed at the end of file (started at line 96)
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


5 Errors.

PLS HELP CAREVA SA MEARGA!!! :cry:va rog!!

Fara reclama in semnatura!

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.