[FilterScript] System of Teleports [AddTeleport] [Eficaz e Simples]
#1


By DraKiNs
Introduзгo::
Postei na бrea inglesa e acho meio errado nгo compartilhar aqui tambйm,entгo aqui vai um sistema de teleporte muito simples e eficiente

Usando:

Procure por:
OnFilterScriptInit

e Adicione:
AddTeleport("Tele Name",X,Y,Z,INTERIOR);


Infos Gerais

♥ Sistema de Carregar Objetos [Nгo disaparece]
♥ Mensagem para Teleport ('[FeK]DraKiNs entrou no teleporte de Las Venturas [/teles]')
♥ Simples para adicionar Teleportes
♥ Detecta se o player esta de carro,assim teleportando apй e a carro
♥ Funciona em Interiores
♥ Tudo em Dialog totalmente prбtico

Crйditos
Crйditos para [FeK]Squad e [FeK]DraKiNs (eu)


Cуdigo:

pawn Code:
#include <a_samp>
#define MAX_TELES 100
#define DIALOG_TELE 24
new strmem[1024];
new TelesCriados=-1;
enum pTele
{
    NomeTele[64],
    Float:xo,
    Float:yo,
    Float:zo,
    InteriorID,
    TeleporteID
};
new TeleporteSystem[MAX_TELES][pTele];
public OnFilterScriptInit()
{
    AddTeleport("Aero San Fiero",-1448.325, -325.1149, 15,0);
    AddTeleport("Aero Los Santos",1546.908, -2313.5, 15,0);
    AddTeleport("Aero Las Venturas",1677.544, 1426.837, 15,0);

    printf("\n\n\n\n System of Teleports carregado| %d/%d teleports total \n\n\n\n",TelesCriados,MAX_TELES);
    return true;
}
stock AddTeleport(nomete[], Float:xob, Float:yob, Float:zob,interior)
{
    TelesCriados++;
    format(TeleporteSystem[TelesCriados][NomeTele],64,"%s",nomete);
    TeleporteSystem[TelesCriados][xo] = xob;
    TeleporteSystem[TelesCriados][yo] = yob;
    TeleporteSystem[TelesCriados][zo] = zob;
    TeleporteSystem[TelesCriados][InteriorID] = interior;
    TeleporteSystem[TelesCriados][TeleporteID] = TelesCriados;
    return ;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    new item = listitem;
    if(item == TeleporteSystem[item][TeleporteID])
    {
        if(!response) return SendClientMessage(playerid, 0xFFFFFFFF, "Vocк cancelou teleporte");
        new message[128];
        format(message, sizeof(message), "Vocк foi teletransportado para %s aguarde", TeleporteSystem[item][NomeTele]);
        SendClientMessage(playerid, 0xFFFFFFFF, message);
        new name[24], string[128];
        GetPlayerName(playerid, name, sizeof(name));
        format(string, sizeof(string), "** %s foi para %s [/teles].",name,TeleporteSystem[item][NomeTele]);
        SendClientMessageToAll(0xFFFF00AA, string);
        if(IsPlayerInAnyVehicle(playerid))
        {
            SetVehiclePos(GetPlayerVehicleID(playerid),TeleporteSystem[item][xo],TeleporteSystem[item][yo],TeleporteSystem[item][zo]+1);
        }
        if(!IsPlayerInAnyVehicle(playerid))
        {
            SetPlayerPos(playerid,TeleporteSystem[item][xo],TeleporteSystem[item][yo],TeleporteSystem[item][zo]+1);
        }
        TogglePlayerControllable(playerid,0);
        SetTimerEx("DescongelarPlayer",1500,false,"i",playerid);
        return 1;
    }
    return 0;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(!strcmp(cmdtext, "/teles", true))
    {
        format(strmem, 1024, "");
        for(new mem=0;mem<TelesCriados;mem++)
        {
            format(strmem,1024, "%s%s\n",strmem,TeleporteSystem[mem][NomeTele]);
        }
        ShowPlayerDialog(playerid,DIALOG_TELE,DIALOG_STYLE_LIST, "Lista de Teles:",strmem,"Tele", "Exit");
    }
    return 0;
}
forward DescongelarPlayer(playerid);
public DescongelarPlayer(playerid)
{
    TogglePlayerControllable(playerid,1);
    return true;
}
Sгo 80 Linhas

Ou Pastebin (Aceito novas Mirros)

Vнdeo:

[ame]http://www.youtube.com/watch?v=ELr631Pgdbw[/ame]
Reply


Messages In This Thread

Forum Jump:


Users browsing this thread: 1 Guest(s)