[Pedido] Teste
#1

Pessoal estou sem SA:MP e estava criando um sistema de portхes, logo queria saber se alguйm se dispхe a testar o sistema pra mim.

Interessados,

pawn Код:
/*
                            Miranda's Gate System
*/


#include <a_samp>

#define MAX_GATES 51 //defina como preferir
forward ReturnGateToInitialPoint(gateid, Float: speed);

//#define STREAMER

enum GInfo
{
    GateObject,
    GateModel,
    Float: GateX,
    Float: GateY,
    Float: GateZ,
    Float: GateRX,
    Float: GateRY,
    Float: GateRZ
};
new GateInfo[MAX_GATES][GInfo];

#if !defined STREAMER

stock CreateGate(GateID, Model, Float: x, Float: y, Float: z, Float: RX, Float: RY, Float: RZ)
{
    if(GateID == MAX_GATES)
        return print("=> Limite Excedido!");
    GateInfo[GateID][GateModel] = Model;
    GateInfo[GateID][GateX] = x;
    GateInfo[GateID][GateY] = y;
    GateInfo[GateID][GateZ] = z;
    GateInfo[GateID][GateRX] = RX;
    GateInfo[GateID][GateRY] = RY;
    GateInfo[GateID][GateRZ] = RZ;
    GateInfo[GateID][GateObject] = CreateObject(Model, x, y, z, RX, RY, RZ);
    return 1;
}

stock MoveGate(GateID, Float:newx, Float:newy, Float:newz, Float:newrx, Float:newry, Float:newrz, Float: moveSpeed, returnTime, Float: returnSpeed)
{
    MoveObject(GateInfo[GateID][GateObject], newx, newy, newz, newrx, newry, newrz, moveSpeed);
    SetTimerEx("ReturnGateToInitialPoint", returnTime, 0, "df", GateID, returnSpeed);
    return 1;
}

public ReturnGateToInitialPoint(gateid, Float: speed)
{
    return MoveObject(GateInfo[gateid][GateObject], GateInfo[gateid][GateX], GateInfo[gateid][GateY], GateInfo[gateid][GateZ], GateInfo[gateid][GateRX], GateInfo[gateid][GateRY], GateInfo[gateid][GateRZ], speed);
}

#else

#include <streamer>

stock CreateGate(GateID, Model, Float: x, Float: y, Float: z, Float: RX, Float: RY, Float: RZ, vw, interior)
{
    if(GateID == MAX_GATES)
        return print("=> Limite Excedido!");
    GateInfo[GateID][GateModel] = Model;
    GateInfo[GateID][GateX] = x;
    GateInfo[GateID][GateY] = y;
    GateInfo[GateID][GateZ] = z;
    GateInfo[GateID][GateRX] = RX;
    GateInfo[GateID][GateRY] = RY;
    GateInfo[GateID][GateRZ] = RZ;
    GateInfo[GateID][GateObject] = CreateDynamicObject(Model, x, y, z, RX, RY, RZ, vw, interior);
    return 1;
}

stock MoveGate(GateID, Float:newx, Float:newy, Float:newz, Float: moveSpeed, returnTime, Float: returnSpeed)
{
    MoveDynamicObject(GateInfo[GateID][GateObject], newx, newy, newz, moveSpeed);
    SetTimerEx("ReturnGateToInitialPoint", returnTime, 0, "df", GateID, returnSpeed);
    return 1;
}

public ReturnGateToInitialPoint(gateid, Float: speed)
{
    return MoveDynamicObject(GateInfo[gateid][GateObject], GateInfo[gateid][GateX], GateInfo[gateid][GateY], GateInfo[gateid][GateZ], speed);
}

#endif
Use o CreateGate na OnGameModeInit ou OnFilterScriptInit.
Use o MoveGate para movк-los
returnTime = tempo para voltar ao ponto inicial
returnSpeed = velocidade para voltar ao ponto inicial.

Caso alguйm teste me diga se hб bugs para que eu os corrija, nгo havendo, faзo release

Agradeзo desde jб.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)