Script de arbol de navidad
#1

Hola irй al punto tengo un scrip de arbol de navidad pero lo quiero mejorarlo pero no se como, El script es que al usar /crear arbol crear un arbol con regalos al rededor y /sacar arbol lo saca, el problema es que al reiniciar el servidor no esta mas, tambiйn quisiera poder poner un limite de 3 arboles y que en 1 solo se puede usar /regalo.
Y lo peor lo tengo en strcmp y lo quiero pasar a zcmd
Codigo
Код:
#include <a_samp>

new ArbolObj[10];
new Text3D:Arbol3D;
public OnFilterScriptInit()
{
	print("\n--------------------------------------");
	print(":D Бrbol");
	print("--------------------------------------\n");
	return 1;
}
public OnFilterScriptExit()
{
	return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
	if (strcmp("/creararbol", cmdtext, true, 10) == 0)
	{
	    new Float:x, Float:y, Float:z;
	    GetPlayerPos(playerid, x, y, z);
		Arbol(x, y, z, false);
		return 1;
	}
	if (strcmp("/eliminararbol", cmdtext, true, 10) == 0)
	{
	    new Float:x, Float:y, Float:z;
	    GetPlayerPos(playerid, x, y, z);
		Arbol(x, y, z, true);
		return 1;
	}
	return 0;
}
stock Arbol(Float:x, Float:y, Float:z, bool:eliminar)
{
if(eliminar==false)
{
	ArbolObj[0] = CreateObject(19076, x, y, z-1.0,0.0,0.0,300);
	ArbolObj[1] = CreateObject(19054, x, y+1.0, z-0.4,0,0,0.0,300);
    ArbolObj[2] = CreateObject(19058, x+1.0, y, z-0.4,0,0,0.0,300);
    ArbolObj[3] = CreateObject(19056, x, y-1.0, z-0.4,0,0,0.0,300);
    ArbolObj[4] = CreateObject(19057, x-1.0, y, z-0.4,0,0,0.0,300);
    ArbolObj[5] = CreateObject(19058, x-1.5, y+1.5, z-1.0,0,0,0.0,300);
    ArbolObj[6] = CreateObject(19055, x+1.5, y-1.5, z-1.0,0,0,0.0,300);
    ArbolObj[7] = CreateObject(19057, x+1.5, y+1.5, z-1.0,0,0,0.0,300);
    ArbolObj[8] = CreateObject(19054, x-1.5, y-1.5, z,0,0,0.0,300);
    ArbolObj[9] = CreateObject(3526, x, y, z-1.0,0,0,0,300);
	Arbol3D = Create3DTextLabel("Бrbol de navidad\nUsa /regalo", -1, x, y, z-0.4, 12, 0, 0);
}else{
	for(new i; i<10; i++)
	{
	DestroyObject(ArbolObj[i]);
	}
	Delete3DTextLabel(Arbol3D);
}
}
Reply
#2

tal vez te siva esto.
https://sampforum.blast.hk/showthread.php?tid=483446
https://sampforum.blast.hk/showthread.php?tid=476880

saludos.

EDIT: editaste el mensaje. -.-
Reply
#3

Quote:
Originally Posted by OTACON
Посмотреть сообщение
No, a nadie le sirve esa cosa D:
Reply
#4

Quote:
Originally Posted by Juand
Посмотреть сообщение
No, a nadie le sirve esa cosa D:
cuando hagas algo tu, ven y habla, de lo contrario calladito.
saludos.
Reply
#5

pawn Код:
zcmd(arbol, playerid, params[])
{
    if(IsPlayerConnected(playerid))
    {
        if(strcmp(params,"crear",true) == 0)
        {
            new Float:x, Float:y, Float:z;
            GetPlayerPos(playerid, x, y, z);
            Arbol(x, y, z, false);
            return 1;
        }
        if(strcmp(params,"eliminar",true) == 0)
        {
            new Float:x, Float:y, Float:z;
            GetPlayerPos(playerid, x, y, z);
            Arbol(x, y, z, true);
            return 1;
        }
    }
    return true;
}
Reply
#6

Quote:
Originally Posted by jotajeda
Посмотреть сообщение
pawn Код:
zcmd(arbol, playerid, params[])
{
    if(IsPlayerConnected(playerid))
    {
        if(strcmp(params,"crear",true) == 0)
        {
            new Float:x, Float:y, Float:z;
            GetPlayerPos(playerid, x, y, z);
            Arbol(x, y, z, false);
            return 1;
        }
        if(strcmp(params,"eliminar",true) == 0)
        {
            new Float:x, Float:y, Float:z;
            GetPlayerPos(playerid, x, y, z);
            Arbol(x, y, z, true);
            return 1;
        }
    }
    return true;
}
Gracias pero como hago para que al reiniciar el servidor quede el arbol?
Reply
#7

guarda la posiciуn del бrbol cuando reinicias el servidor(OnGameModeExit) y despuйs la cargas y vuelves a crear el arbol cuando inicia el servidor. (OnGameModeInit)

saludos.
Reply
#8

Quote:
Originally Posted by Jeree10
Посмотреть сообщение
Gracias pero como hago para que al reiniciar el servidor quede el arbol?
has un archivo y segundos antes de reiniciar el servidor coje las variables del arbol,(haste una variable para indicar que usaste /arbol crear y guardar en archivo) y usalбs para escribir en el archivo, en ongamemodeinit carga las variables del archivo y si aparece en cero, no carga el arbol, si uno se crearб en la pos Float que guardaste.

O hazlo por comando como dijo Otacon.
Reply
#9

asi esta bien?
pawn Код:
printf("Arboles Guardados: %d (MAX: %d)", cuenta, MAX_ARBOLES);

    cuenta = 0;
    for(new x=1; x<=TotalArboles; x++)
    {
        SaveArboles(x); //Guardado de Arboles
        cuenta++;
    }
Reply
#10

Por favor alguien que me la haga facil no comprendo nada
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)