їCуmo hago para?
#1

їCуmo hago para que un comando solo funcione en la noche del servidor? osea a ciertas horas, ejemplo este serб unos de los comandos

Код:
if(strcmp(cmd, "/robar", true) == 0) //Robar en casas o locales
{
    if(PlayerInfo[playerid][pTrabajo] != 4){SendClientMessage(playerid, Rojo, "* No eres ladrуn."); return 1;}
    if(!GetPlayerDentroCasa(playerid) && !GetPlayerDentroNego(playerid)){SendClientMessage(playerid, Rojo, "* No estбs en una casa o un local."); return 1;}
    if(Robando[playerid] > 0){SendClientMessage(playerid, Rojo, "* Ya estбs robando."); return 1;}
    if(PlayerInfo[playerid][pTiempoRobo] > 0)
    {
        format(string, sizeof(string), "* Debes esperar %d minutos para usar este comando.", PlayerInfo[playerid][pTiempoRobo]);
        SendClientMessage(playerid, Rojo, string);
        return 1;
    }
    new policonectado;
    for(new x=0; x<MAX_PLAYERS; x++)
    {
        if(IsPlayerConnected(x) && x != INVALID_PLAYER_ID && PlayerInfo[x][pFaccion] == 1 && PlayerInfo[x][pServicioPD] > 0){policonectado = 1; break;}
    }
    if(policonectado == 0){SendClientMessage(playerid, Rojo, "* Debe haber al menos un policнa de servicio conectado para poder robar."); return 1;}
	if(GetPlayerDentroCasa(playerid)) //Es una casa
	{
	    new casa = GetPlayerDentroCasa(playerid);
	    if(PlayerInfo[playerid][pCasa] == casa){SendClientMessage(playerid, Rojo, "* No puedes robar en tu propia casa."); return 1;}
	    if(IsPlayerInRangeOfPoint(playerid, 7.0, HouseInfo[casa][hSalidaX], HouseInfo[casa][hSalidaY], HouseInfo[casa][hSalidaZ])){SendClientMessage(playerid, Rojo, "* Debes estar mбs alejado de la puerta para robar."); return 1;}
		format(string, sizeof(string), "* %s comienza a buscar dinero y objetos de valor por la casa.", GetPlayerNameRP(playerid));
	    ProxDetector(15.0, playerid, string, Morado,Morado,Morado,Morado,Morado);
	    Robando[playerid] = 1;
	    RoboTimer[playerid] = SetTimerEx("RobarF", 15000, false, "i, d", playerid, 2);
	    TogglePlayerControllable(playerid, 0);
	    ApplyAnimation(playerid,"BOMBER","BOM_Plant",4.1,1,1,1,0,0,1);
		for(new i = 0; i < MAX_PLAYERS; i++)
		{
			if(IsPlayerConnected(i) && i != INVALID_PLAYER_ID)
			{
				if(PlayerInfo[i][pFaccion] == 1 && PlayerInfo[i][pServicioPD] > 0)
				{
					SetPlayerCheckpoint(i, HouseInfo[casa][hEntradaX], HouseInfo[casa][hEntradaY], HouseInfo[casa][hEntradaZ], 4.0);
					format(string, sizeof(string), "[Radio] -{FFFFFF} Central: Reportan un robo domйstico en la casa {56C4FF}%s.", HouseInfo[casa][hBarrio]);
					SendClientMessage(i, 0xFF4444FF, string);
					format(string, sizeof(string), "[Radio] -{FFFFFF} Central: Describen al sospechoso como... (( {FFFF04}}%s{FFFFFF} )).", GetPlayerNameRP(playerid));
					SendClientMessage(i, 0xFF4444FF, string);
				}
			}
		}
	    return 1;
	}
	if(GetPlayerDentroNego(playerid)) //Es un negocio
	{
	    new nego = GetPlayerDentroNego(playerid);
	    if(PlayerInfo[playerid][pNegocio] == nego){SendClientMessage(playerid, Rojo, "* No puedes robar en tu propia negocio."); return 1;}
	    if(IsPlayerInRangeOfPoint(playerid, 7.0, NegoInfo[nego][nSalidaX], NegoInfo[nego][nSalidaY], NegoInfo[nego][nSalidaZ])){SendClientMessage(playerid, Rojo, "* Debes estar mбs alejado de la puerta para robar."); return 1;}
	    if(NegoInfo[nego][nTipo] == 13 || NegoInfo[nego][nTipo] == 14){SendClientMessage(playerid, Rojo, "* No puedes robar en oficinas o almacenes."); return 1;}
		format(string, sizeof(string), "* %s comienza a forzar la caja fuerte para intentar llevarse el mбximo dinero posible.", GetPlayerNameRP(playerid));
	    ProxDetector(15.0, playerid, string, Morado,Morado,Morado,Morado,Morado);
	    Robando[playerid] = 1;
	    RoboTimer[playerid] = SetTimerEx("RobarF", 20000, false, "i, d", playerid, 2);
	    TogglePlayerControllable(playerid, 0);
	    ApplyAnimation(playerid,"BOMBER","BOM_Plant",4.1,1,1,1,0,0,1);
		for(new i = 0; i < MAX_PLAYERS; i++)
		{
			if(IsPlayerConnected(i) && i != INVALID_PLAYER_ID)
			{
				if(PlayerInfo[i][pFaccion] == 1 && PlayerInfo[i][pServicioPD] > 0)
				{
					SetPlayerCheckpoint(i, NegoInfo[nego][nEntradaX], NegoInfo[nego][nEntradaY], NegoInfo[nego][nEntradaZ], 4.0);
					format(string, sizeof(string), "[Radio] -{FFFFFF} Central: Reportan un robo en el local {56C4FF}%s.", NegoInfo[nego][nNombre]);
					SendClientMessage(i, 0xFF4444FF, string);
					format(string, sizeof(string), "[Radio] -{FFFFFF} Central: Describen al sospechoso como... (( {FFFF04}%s{FFFFFF} )).", GetPlayerNameRP(playerid));
					SendClientMessage(i, 0xFF4444FF, string);
				}
			}
		}
	    return 1;
	}
	return 1;
}
Reply
#2

Me imagino que asi
Код:
new Hora, Minuto, Segundo;
gettime(Hora, Minuto, Segundo);

if(hora != 23) return SendClientMessage(playerid, -1, "Puedes usar este comando a las 23 horas");
recuerda que gettime extrae la hora del alojamiento por ejemplo si abres el server en tu pc, se extraera la hora de tu pc
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)