U3Games

Games | Desarrollo & Soporte => SAMP | Desarrollo de Servidores => San Andreas Multi Player => SAMP | Filter Scripts => Mensaje iniciado por: Swarlog en May 13, 2025, 06:15 PM

Título: Maquina de Refrescos
Publicado por: Swarlog en May 13, 2025, 06:15 PM
maquina_refrescos_0.png

maquina_refrescos_1.png

maquina_refrescos_2.png

Muy Buenas!

Aquí os dejo un script que encontré, se trata de un script para que podamos tener maquinas de refrescos en pleno funcionamiento.

El funcionamiento es básicamente facil, lo que si he hecho es pasar el código a nuestra plantilla por defecto.
Espero que os guste, adjunto imagenes y archivo a descargar con su code.

// ----------------------------------------------------------------------
// Creado para la comunidad U3Games --> http://samp.united-extreme.com
// De la comunidad de juegos online --> http://u3games.united-extreme.com
// Maquina de Refrescos - By Sr.nelly - Version: 1.0
// ----------------------------------------------------------------------

#include <a_samp>
#pragma tabsize 0

//----------------------------------------------------------
// DEFINE:
//----------------------------------------------------------

#define COLOR_GREY 0xE0D605FF
#define COLOR_YELLOW2 0xF5DEB3AA

#define DIALOG_BEBER 6674

//----------------------------------------------------------
// FORWARD:
//----------------------------------------------------------

forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);

//----------------------------------------------------------
// CODIGO INTERNO SCRIPT:
//----------------------------------------------------------

public OnFilterScriptInit()
{
//Mensaje de la ejecucion del scripts:
print("[xxxxxxxxx] Sistema xxxxxxxx cargado correctamente.");

// Spawn maquina de refrescos:
CreateObject(955, 1357.49, -1759.07, 13.00, 0.00, 0.00, 181.72);

return 1;
}

public OnFilterScriptExit()
{
//Mensaje de la ejecucion del scripts:
print("[xxxxxxxxx] Sistema xxxxxxxx deshabilitado correctamente.");
return 1;
}

main()
{
// Mensaje final al cargar el servidor:
print("[xxxxxxxxx] Script de xxxxxxxx cargado correctamente.");
}

//----------------------------------------------------------
// CODIGO SCRIPT:
//----------------------------------------------------------

public OnGameModeInit()
{
// Texto al lado de la maquina de refrescos:
Create3DTextLabel("Maquina de Refrescos:\nUsa el comando /bebida para activar el menu disponible.", 0xFF952BFF, 1357.5651, -1757.8229, 13.5078, 6.0, 0);
CreatePickup(1239, 1, 1357.5651,-1757.8229,13.5078);

return 1;
}

public OnGameModeExit()
{
return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
return 1;
}

public OnPlayerConnect(playerid)
{
return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
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[])
{
if (strcmp(cmdtext, "/bebida", true) == 0)
{
if (PlayerToPoint(2, playerid,1357.5651,-1757.8229,13.5078))
{
ShowPlayerDialog(playerid, DIALOG_BEBER, DIALOG_STYLE_LIST, "Maquina de Refrescos", "CocaCola[$12]\nSprite[$10]\nAgua[$8]\nSoda[$5]\nPepsi[10$]", "Comprar", "Cancelar");
}
else
{
return SendClientMessage(playerid, COLOR_GREY, " No estas cerca de una maquina de refrescos!");
}

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[])
{
if (dialogid == DIALOG_BEBER)
{
if (response)
{
if (listitem == 0)
{
SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DRINK_BEER);
ApplyAnimation(playerid,"VENDING","VEND_Drink_P",4.1,0,1,1,0,1);
GivePlayerMoney(playerid, - 12);
SendClientMessage(playerid, COLOR_YELLOW2, "Comprastes CocaCola Por: $12");
SetPlayerHealth(playerid, 100.0);
}
if (listitem == 1) // vodka
{
SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DRINK_WINE);
GivePlayerMoney(playerid, - 10);
SendClientMessage(playerid, COLOR_YELLOW2, "Comprastes Sprite Por: $10");
SetPlayerHealth(playerid, 100.0);
}
if (listitem == 2) // Whisky
{
SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DRINK_WINE);
GivePlayerMoney(playerid, - 8);
SendClientMessage(playerid, COLOR_YELLOW2, "Comprastes Agua Por: $8");
SetPlayerHealth(playerid, 100.0);
}
if (listitem == 3) // agua
{
SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DRINK_SPRUNK);
GivePlayerMoney(playerid, - 3);
SendClientMessage(playerid, COLOR_YELLOW2, "Comprastes Soda Por: $3");
SetPlayerHealth(playerid, 100.0);
}
if (listitem == 4) // soda
{
SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DRINK_SPRUNK);
GivePlayerMoney(playerid, - 10);
SendClientMessage(playerid, COLOR_YELLOW2, "Comprastes Pepsi Por: $10");
SetPlayerHealth(playerid, 100.0);
}
}
}

return 1;
}

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

//----------------------------------------------------------
// CODIGO ADICIONAL:
//----------------------------------------------------------

public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z)
{
    if (IsPlayerConnected(playerid))
{
new Float:oldposx, Float:oldposy, Float:oldposz;
new Float:tempposx, Float:tempposy, Float:tempposz;
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
tempposx = (oldposx -x);
tempposy = (oldposy -y);
tempposz = (oldposz -z);
if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
{
return 1;
}
}

return 0;
}

Descargar:

Rghost (http://rghost.net/46676095)