pawno compile problem comes and goes
#1

okay so ive been scripting lately and have noticed this odd thing...so i just copied a filterscript from pastebin into a new .pwn file...i compile it and its fine...now 2 hours later i open it to just view some things from inside it and then i compile it...and suddenly errors..so i just close it and just leave it alone for a moment and then i open again as i need it..so i compile it and bam no errors, now keep in mind that i didnt mess with any of the includes or the gm im using...i just edited this one .pwn file and only compiled, i dident change anything within the script on purpose or by mistake
Reply
#2

we are no wizards, give us the script and people that have knowledge with scripting can help you
Reply
#3

pawn Код:
/ This is a comment
// uncomment the line below if you want to write a filterscript
//#define FILTERSCRIPT

#include <a_samp>
#include <ZCMD>
#include <sscanf2>
#include "../include/streamer.inc"

#define COLOR_YELLOW 0xFFFF00AA
#define SHS_PASS "irp"
#define LoopPlayers(%1,%2) for(new %1 = 0; %1 < %2; %1++)
#define MAX_DMP 400
#define MAX_LABELS 800
#define cmdp:(%1) CMD:%1(playerid, params[])
#define DIALOG_SHSLOGIN 16001
#define MAX_DOORS 1000

forward LoadAll();

new SHSLoggedIn[MAX_PLAYERS];
new CreatedVehs[100];
new Float:GFFP[MAX_PLAYERS][5];
new GIFP[MAX_PLAYERS][5];
enum dInfo
{
    Float:dPosX,
    Float:dPosY,
    Float:dPosZ,
    dModel,
    dColor,
    dVw,
    dInt,
    dCreated,
    dCreate,
};
new DMPInfo[MAX_DMP][dInfo];

enum lInfo
{
    Float:lPosX,
    Float:lPosY,
    Float:lPosZ,
    Float:lDistance,
    lColor,
    lVw,
    lInt,
    lText[42],
    Text3D:lCreate,
}
new LabelInfo[MAX_LABELS][lInfo];

enum ddInfo
{
    Float:ddExteriorX,
    Float:ddExteriorY,
    Float:ddExteriorZ,
    Float:ddExteriorA,
    Float:ddInteriorX,
    Float:ddInteriorY,
    Float:ddInteriorZ,
    Float:ddInteriorA,
    ddInt,
    ddIntVW,
    ddExtVw,
    ddExtInt,
    ddName[32],
    ddLevel,
    ddAdmin,
    ddVehicleAble,
    ddPickupType,
    ddColor,
    ddLock,
    Text3D:ddLabel,
    ddCreate,
}
new DoorInfo[MAX_DOORS][ddInfo];

public OnFilterScriptInit()
{
    SetTimer("LoadAll",3000,false);
    for(new v = 0; v < sizeof(CreatedVehs); v++)
    {
        CreatedVehs[v] = INVALID_VEHICLE_ID;
    }
    return 1;
}

public OnFilterScriptExit()
{
    return 1;
}


public OnPlayerRequestClass(playerid, classid)
{
    SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
    return 1;
}

public OnPlayerConnect(playerid)
{
    return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    if(SHSLoggedIn[playerid] == 1) { SHSLoggedIn[playerid] = 0; SCM(playerid,"Disconnected from SHS,Stuff saved at scriptfiles/logs/shs.txt");}
    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;
}


//---------------------------------------------------[ZCMD Commands]------------------------------------------------------------


cmdp:(shslogin)
{
    if(SHSLoggedIn[playerid] == 1) return SCM(playerid,"You are already logged into SHS !");
    ShowPlayerDialog(playerid,DIALOG_SHSLOGIN,DIALOG_STYLE_INPUT,"Login SHS","Please enter the server's SHS Default password","Okey","");
    return 1;
}

cmdp:(mpos)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    new input[24],saveinput[256];
    if(sscanf(params,"s[24]",input)) return SCM(playerid,"USAGE: /mpos [savename]");
    GetPlayerPosData(playerid);
    format(saveinput,sizeof(saveinput),"X [%f] Y[%f] Z[%f] I[%i] VW[%i] %s",GFFP[playerid][0],GFFP[playerid][1],GFFP[playerid][2],GIFP[playerid][0],GIFP[playerid][1],input);
    SCM(playerid,saveinput);
    Log("/logs/mpos.txt",saveinput);
    return 1;
}

cmdp:(svw)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    new id,vwid;
    if(sscanf(params,"ri",id,vwid)) return SCM(playerid,"USAGE: /svw [playerid/partofname] [virtualworld]");
    if(!IsPlayerConnected(id)) return SCM(playerid,"Wrong player ID");
    SetPlayerVirtualWorld(id,vwid);
    new string[256];
    format(string,sizeof(string),"[%d-%d-%d] %s has set %s's virtual world to %i.",GetDay(),GetMonth(),GetYear(),GetPName(playerid),GetPName(id),vwid);
    Log("/logs/shscmds.txt",string);
    if(id == playerid)
    {
        format(string,sizeof(string),"You have set your own virtual world to %i",vwid);
        SCM(playerid,string);
        return 1;
    }else{
        format(string,sizeof(string),"You have set %s's virtual world to %i",GetPName(id),vwid);
        SCM(playerid,string);
        format(string,sizeof(string),"%s Has set your virtual world to %i",GetPName(playerid),vwid);
        SCM(id,string);
    }
    return 1;
}

cmdp:(sint)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    new id,interior;
    if(sscanf(params,"ri",id,interior)) return SCM(playerid,"USAGE: /svw [playerid/partofname] [interior]");
    if(!IsPlayerConnected(id)) return SCM(playerid,"Wrong player ID");
    SetPlayerInterior(id,interior);
    new string[256];
    format(string,sizeof(string),"[%d-%d-%d] %s has set %s's interior to %i.",GetDay(),GetMonth(),GetYear(),GetPName(playerid),GetPName(id),interior);
    Log("/logs/shscmds.txt",string);
    if(id == playerid)
    {
        SetPlayerInterior(id,interior);
        format(string,sizeof(string),"You have set your own interior to %i",interior);
        SCM(playerid,string);
        return 1;
    }else{
        SetPlayerInterior(id,interior);
        format(string,sizeof(string),"You have set %s's interior to %i",GetPName(id),interior);
        SCM(playerid,string);
        format(string,sizeof(string),"%s Has set your interior to %i",GetPName(playerid),interior);
        SCM(id,string);
    }
    return 1;
}

//-----------------------------------------------------[ZCMD Commands / Dynamic Map Icons]--------------------------------------------------------
cmdp:(dmp)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    new input[32],id,value;
    if(sscanf(params,"s[32]dD",input,id,value))
    {
        SCM(playerid,"USAGE: /dmp [name] [dmpid] [(optional)value]");
        return SCM(playerid,"Available names : [NON _ CASE SENSITIVE] Position, Model, Color, VirtualWorld, Interior, Delete");
    }
    if(id < 0 || id > MAX_DMP) return SCM(playerid,"ID Must be from 0 till 400");
    if(strcmp(input,"position",true) == 0)
    {
        GetPlayerPosData(playerid);
        DMPInfo[id][dPosX] = GFFP[playerid][0];
        DMPInfo[id][dPosY] = GFFP[playerid][1];
        DMPInfo[id][dPosZ] = GFFP[playerid][2];
        DMPInfo[id][dInt] = GIFP[playerid][0];
        DMPInfo[id][dVw] = GIFP[playerid][1];
        SaveDMPS();
        LoadDMPS();
        SCM(playerid,"You have set the position.");
    }
    if(strcmp(input,"model",true) == 0)
    {
        DMPInfo[id][dModel] = value;
        SaveDMPS();
        LoadDMPS();
        SCM(playerid,"You have set the model.");
    }
    if(strcmp(input,"color",true) == 0)
    {
        DMPInfo[id][dColor] = value;
        SaveDMPS();
        LoadDMPS();
        SCM(playerid,"You have set the color.");
    }
    if(strcmp(input,"virtualworld",true) == 0)
    {
        DMPInfo[id][dVw] = value;
        SaveDMPS();
        LoadDMPS();
        SCM(playerid,"You have set the virtual world.");
    }
    if(strcmp(input,"interior",true) == 0)
    {
        DMPInfo[id][dInt] = value;
        SaveDMPS();
        LoadDMPS();
        SCM(playerid,"You have set the interior.");
    }
    if(strcmp(input,"delete",true) == 0)
    {
        DMPInfo[id][dPosX] = 0;
        DMPInfo[id][dPosY] = 0;
        DMPInfo[id][dPosZ] = 0;
        DMPInfo[id][dInt] = 0;
        DMPInfo[id][dVw] = 0;
        DMPInfo[id][dModel] = 0;
        DMPInfo[id][dColor] = 0;
        DMPInfo[id][dVw] = 0;
        DMPInfo[id][dCreated] = 0;
        SCM(playerid,"You have deleted the dmp!");
        SaveDMPS();
        LoadDMPS();
    }

    return 1;
}

cmdp:(dmpnext)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    new input[24];
    SCM(playerid,"Next available dynamic map icon : ");
    for(new d = 0; d <= MAX_DMP; d++)
    {
        if(DMPInfo[d][dPosX] == 0 && DMPInfo[d][dPosY] == 0 && DMPInfo[d][dPosZ] == 0)
        {
            format(input,sizeof(input),"Next : %d",d);
            SCM(playerid,input);
            break;
        }
    }
    return 1;
}

cmdp:(dmpclose)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    GetPlayerPosData(playerid);
    new input[64];
    SCM(playerid,"Listin closest DMPS....");
    for(new d = 0; d <= MAX_DMP; d++)
    {
        if(IsPlayerInRangeOfPoint(playerid,15.0,DMPInfo[d][dPosX],DMPInfo[d][dPosY],DMPInfo[d][dPosZ]))
        {
            format(input,sizeof(input),"DMP %d ( model %d ) is near to you.",d,DMPInfo[d][dModel]);
            SCM(playerid,input);
        }
    }
    return 1;
}

//-----------------------------------------------------------------[ZCMD/Dynamic 3D Text Labels]------------------------------------------------
cmdp:(3dlabel)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    new input[32],id,value;
    if(sscanf(params,"s[32]dD",input,id,value))
    {
        SCM(playerid,"USAGE: /3dlabel [name] [labelID] [(optional)value]");
        SCM(playerid,"/3dtext to edit the text");
        return SCM(playerid,"Available names : [NON _ CASE SENSITIVE] Position, Color, VirtualWorld, Interior, Distance, Delete");
    }
    if(id < 0 || id > MAX_LABELS) return SCM(playerid,"ID Must be from 0 till 800");
    if(strcmp(input,"position",true) == 0)
    {
        GetPlayerPosData(playerid);
        LabelInfo[id][lPosX] = GFFP[playerid][0];
        LabelInfo[id][lPosY] = GFFP[playerid][1];
        LabelInfo[id][lPosZ] = GFFP[playerid][2];
        LabelInfo[id][lInt] = GIFP[playerid][0];
        LabelInfo[id][lVw] = GIFP[playerid][1];
        SaveLabels();
        LoadLabels();
        SCM(playerid,"You have set the position !");
    }
    if(strcmp(input,"color",true) == 0)
    {
        if(value > 6 || value < 0) return SCM(playerid,"Color must be from 0 till 6");
        LabelInfo[id][lColor] = value;
        SaveLabels();
        LoadLabels();
        SCM(playerid,"You have set the color !");
    }
    if(strcmp(input,"VirtualWorld",true) == 0)
    {
        LabelInfo[id][lVw] = value;
        SaveLabels();
        LoadLabels();
        SCM(playerid,"You have set the virtual world !");
    }
    if(strcmp(input,"interior",true) == 0)
    {
        LabelInfo[id][lInt] = value;
        SaveLabels();
        LoadLabels();
        SCM(playerid,"You have set the interior !");
    }
    if(strcmp(input,"distance",true) == 0)
    {
        LabelInfo[id][lDistance] = value;
        SaveLabels();
        LoadLabels();
        SCM(playerid,"You have set the distance !");
    }
    if(strcmp(input,"delete",true) == 0)
    {
        LabelInfo[id][lPosX] = 0;
        LabelInfo[id][lPosY] = 0;
        LabelInfo[id][lPosZ] = 0;
        LabelInfo[id][lInt] = 0;
        LabelInfo[id][lVw] = 0;
        LabelInfo[id][lColor] = 0;
        SaveLabels();
        LoadLabels();
        SCM(playerid,"You have deleted the label !");
    }
    return 1;
}

cmdp:(3dnext)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    new input[24];
    SCM(playerid,"Next available dynamic 3d text labels : ");
    for(new l = 0; l <= MAX_LABELS; l++)
    {
        if(LabelInfo[l][lPosX] == 0 && LabelInfo[l][lPosY] == 0 &&LabelInfo[l][lPosZ] == 0)
        {
            format(input,sizeof(input),"Next : %d",l);
            SCM(playerid,input);
            break;
        }
    }
    return 1;
}

cmdp:(3dtext)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    new input[42],id;
    if(sscanf(params,"is[42]",id,input))
    {
        SCM(playerid,"USAGE: /3dtext [labelID] [text]");
        return 1;
    }
    if(id < 0 || id > MAX_LABELS) return SCM(playerid,"ID Must be from 0 till 800");
    strmid(LabelInfo[id][lText],input,0,strlen(input),255);
    SCM(playerid,"You have set the text !");
    SaveLabels();
    LoadLabels();
    return 1;
}

cmdp:(3dclose)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    new input[42];
    SCM(playerid,"Listin closest 3d text labels ....");
    for(new l = 0; l <= MAX_LABELS; l++)
    {
        if(IsPlayerInRangeOfPoint(playerid,7.0,LabelInfo[l][lPosX],LabelInfo[l][lPosY],LabelInfo[l][lPosZ]))
        {
            format(input,sizeof(input),"Label %d is near to you.",l);
            SCM(playerid,input);
        }
    }
    return 1;
}


//--------------------------------------------------------[ZCMD / Dynamic Doors]--------------------------------------------------------------------

cmdp:(door)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    new input[32],id,value;
    if(sscanf(params,"s[32]dD",input,id,value))
    {
        SCM(playerid,"USAGE: /door [name] [doorID] [(optional)value]");
        SCM(playerid,"/doorname to edit the text");
        return SCM(playerid,"Available names : [NON _ CASE SENSITIVE] Exterior, Color, Interior, Delete, Lock, PickupType, Level, VehicleAble, Admin");
    }
    if(id < 0 || id > MAX_DOORS) return SCM(playerid,"ID Must be from 0 till 1000");

    if(strcmp(input,"exterior",true) == 0)
    {
        GetPlayerPosData(playerid);
        DoorInfo[id][ddExteriorX] = GFFP[playerid][0];
        DoorInfo[id][ddExteriorY] = GFFP[playerid][1];
        DoorInfo[id][ddExteriorZ] = GFFP[playerid][2];
        DoorInfo[id][ddExteriorA] = GFFP[playerid][3];
        DoorInfo[id][ddExtVw] = GIFP[playerid][1];
        DoorInfo[id][ddExtInt] = GIFP[playerid][0];
        SaveDoors();
        LoadDoors();
        SCM(playerid,"You have set the exterior !");
    }
    if(strcmp(input,"interior",true) == 0)
    {
        GetPlayerPosData(playerid);
        DoorInfo[id][ddInteriorX] = GFFP[playerid][0];
        DoorInfo[id][ddInteriorY] = GFFP[playerid][1];
        DoorInfo[id][ddInteriorZ] = GFFP[playerid][2];
        DoorInfo[id][ddInteriorA] = GFFP[playerid][3];
        DoorInfo[id][ddIntVW] = id+1000;
        DoorInfo[id][ddInt] = GIFP[playerid][0];
        SetPlayerVirtualWorld(playerid,id+1000);
        SaveDoors();
        LoadDoors();
        SCM(playerid,"You have set the interior !");
    }
    if(strcmp(input,"color",true) == 0)
    {
        //0-9
        if(value < 0 || value > 9) return SCM(playerid,"Color must be from 0 till 9");
        DoorInfo[id][ddColor] = value;
        SaveDoors();
        LoadDoors();
        SCM(playerid,"You have set the color !");
    }
    if(strcmp(input,"Lock",true) == 0)
    {
        if(DoorInfo[id][ddLock] == 0)
        {
            DoorInfo[id][ddLock] = 1;
            GameTextForPlayer(playerid,"~n~ ~n~ Door ~r~ Locked",3000,3);
            return 1;
        }
        if(DoorInfo[id][ddLock] == 1)
        {
            DoorInfo[id][ddLock] = 0;
            GameTextForPlayer(playerid,"~n~ ~n~ Door ~g~ Unlocked",3000,3);

            return 1;
        }
    }
    if(strcmp(input,"PickupType",true) == 0)
    {
        if(value < 0 || value > 14) return SCM(playerid,"Pickup ID must be from 0 till 14");
        DoorInfo[id][ddPickupType] = value;
        SaveDoors();
        LoadDoors();
        SCM(playerid,"You have set the pickup model !");
    }
    if(strcmp(input,"Level",true) == 0)
    {
        DoorInfo[id][ddLevel] = value;
        SaveDoors();
        SCM(playerid,"You have set the Level !");
    }
    if(strcmp(input,"Admin",true) == 0)
    {
        if(DoorInfo[id][ddAdmin] == 0)
        {
            DoorInfo[id][ddAdmin] = 1;
            SCM(playerid,"The door will now work for (RCON)admins only !");
            SaveDoors();
            return 1;
        }
        if(DoorInfo[id][ddAdmin] == 1)
        {
            DoorInfo[id][ddAdmin] = 0;
            SCM(playerid,"The door will now work for all players !");
            SaveDoors();
            return 1;
        }
    }
    if(strcmp(input,"VehicleAble",true) == 0)
    {
        DoorInfo[id][ddVehicleAble] = value;
        SCM(playerid,"You have set vehicle able !");
        SaveDoors();
        return 1;
    }
    if(strcmp(input,"Delete",true) == 0)
    {
        DoorInfo[id][ddInteriorX] = 0;
        DoorInfo[id][ddInteriorY] = 0;
        DoorInfo[id][ddInteriorZ] = 0;
        DoorInfo[id][ddInteriorA] = 0;
        DoorInfo[id][ddIntVW] = 0;
        DoorInfo[id][ddInt] = 0;
        DoorInfo[id][ddExteriorX] = 0;
        DoorInfo[id][ddExteriorY] = 0;
        DoorInfo[id][ddExteriorZ] = 0;
        DoorInfo[id][ddExteriorA] = 0;
        DoorInfo[id][ddIntVW] = 0;
        DoorInfo[id][ddInt] = 0;
        DoorInfo[id][ddColor] = 0;
        DoorInfo[id][ddAdmin] = 0;
        DoorInfo[id][ddLevel] = 0;
        DoorInfo[id][ddPickupType] = 0;
        SaveDoors();
        LoadDoors();
        SCM(playerid,"You have set the interior !");
    }
    return 1;
}

cmdp:(dnext)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    SCM(playerid,"Next available door ID :");
    new input[32];
    for(new index = 0; index < MAX_DOORS; index++)
    {
        if(DoorInfo[index][ddExteriorX] == 0 && DoorInfo[index][ddExteriorY] != 0 && DoorInfo[index][ddExteriorZ] == 0 && DoorInfo[index][ddExteriorA] == 0)
        {
            format(input,sizeof(input),"%d",index);
            SCM(playerid,input);
            break;
        }
    }
    return 1;
}

cmdp:(dname)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    new input[32],id;
    if(sscanf(params,"is[32]",id,input)) return SCM(playerid,"USAGE: /dname [doorID] [text(DOOR_NAME)]");
    if(id < 0 || id > MAX_DOORS) return SCM(playerid,"Door id must be from 0 till 1000");
    strmid(DoorInfo[id][ddName],input,0,strlen(input),255);
    SCM(playerid,"You have set the door's name !");
    SaveDoors();
    LoadDoors();
    return 1;
}

cmdp:(dgoto)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    new id;
    if(sscanf(params,"i",id)) return SCM(playerid,"USAGE: /dgoto [doorID]");
    if(id < 0 || id > MAX_DOORS) return SCM(playerid,"Door id must be from 0 till 1000");
    if(DoorInfo[id][ddExteriorX] == 0) return SCM(playerid,"Door doesnt exist !");
    SetPlayerPos(playerid,DoorInfo[id][ddExteriorX],DoorInfo[id][ddExteriorY],DoorInfo[id][ddExteriorZ]);
    SetPlayerFacingAngle(playerid,DoorInfo[id][ddExteriorA]);
    SetPlayerVirtualWorld(playerid,DoorInfo[id][ddExtVw]);
    SetPlayerInterior(playerid,DoorInfo[id][ddExtInt]);
    SCM(playerid,"You have been teleported !");
    return 1;
}

cmdp:(enter)
{
    for(new index = 0; index < sizeof(DoorInfo); index++)
    {
        if(IsPlayerInRangeOfPoint(playerid,3.0,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ]) && GetPlayerVirtualWorld(playerid) == DoorInfo[index][ddExtVw] && GetPlayerInterior(playerid) == DoorInfo[index][ddExtInt])
        {
            if(DoorInfo[index][ddAdmin] > 0 && !IsPlayerAdmin(playerid)) return SCM(playerid,"This door is enabled for admins only !");
            if(GetPlayerScore(playerid) < DoorInfo[index][ddLevel]) return SCM(playerid,"Your level isnt high enough to enter this door !");
            if(DoorInfo[index][ddLock] > 0) return SCM(playerid,"This door is locked !");
            SetPlayerInterior(playerid,DoorInfo[index][ddInt]);
            SetPlayerVirtualWorld(playerid,DoorInfo[index][ddIntVW]);
            if(IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER && DoorInfo[index][ddVehicleAble] > 0)
            {
                new vid = GetPlayerVehicleID(playerid);
                SetVehiclePos(vid,DoorInfo[index][ddInteriorX],DoorInfo[index][ddInteriorY],DoorInfo[index][ddInteriorZ]);
                SetVehicleZAngle(vid,DoorInfo[index][ddInteriorA]);
                SetVehicleVirtualWorld(vid,DoorInfo[index][ddIntVW]);
                LinkVehicleToInterior(vid,DoorInfo[index][ddInt]);
                return 1;
            }else{
                SetPlayerPos(playerid,DoorInfo[index][ddInteriorX],DoorInfo[index][ddInteriorY],DoorInfo[index][ddInteriorZ]);
                SetPlayerFacingAngle(playerid,DoorInfo[index][ddInteriorA]);
            }

        }
    }
    return 1;
}

cmdp:(exit)
{
    for(new index = 0; index < sizeof(DoorInfo); index++)
    {
        if(IsPlayerInRangeOfPoint(playerid,3.0,DoorInfo[index][ddInteriorX],DoorInfo[index][ddInteriorY],DoorInfo[index][ddInteriorZ]) && GetPlayerVirtualWorld(playerid) == DoorInfo[index][ddIntVW] && GetPlayerInterior(playerid) == DoorInfo[index][ddInt])
        {
            SetPlayerInterior(playerid,DoorInfo[index][ddExtInt]);
            SetPlayerVirtualWorld(playerid,DoorInfo[index][ddExtVw]);
            if(IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER && DoorInfo[index][ddVehicleAble] > 0)
            {
                new vid = GetPlayerVehicleID(playerid);
                SetVehiclePos(vid,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ]);
                SetVehicleZAngle(vid,DoorInfo[index][ddExteriorA]);
                SetVehicleVirtualWorld(vid,DoorInfo[index][ddExtVw]);
                LinkVehicleToInterior(vid,DoorInfo[index][ddExtInt]);
                return 1;
            }else{
                SetPlayerPos(playerid,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ]);
                SetPlayerFacingAngle(playerid,DoorInfo[index][ddExteriorA]);
            }
        }

    }
    return 1;
}

cmdp:(cv)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    new model,c1,c2;
    if(sscanf(params,"iii",model,c1,c2)) return SCM(playerid,"USAGE: /cv [modelID] [color1] [color2]");
    for (new iii; iii < sizeof(CreatedVehs); iii++)
    {
        if(CreatedVehs[iii] == INVALID_VEHICLE_ID)
        {
            GetPlayerPosData(playerid);
            CreatedVehs[iii] = CreateVehicle(model,GFFP[playerid][0],GFFP[playerid][1]+2,GFFP[playerid][2],GFFP[playerid][3],c1,c2,1200);
            LinkVehicleToInterior(iii,GIFP[playerid][0]);
            SetVehicleVirtualWorld(iii,GIFP[playerid][1]);
            SCM(playerid,"Vehicle created !");
            break;
        }
    }
    return 1;
}

cmdp:(dvs)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    for(new i = 0; i < sizeof(CreatedVehs); i++)
    {
        if(CreatedVehs[i] != INVALID_VEHICLE_ID)
        {
            DestroyVehicle(CreatedVehs[i]);
            CreatedVehs[i] = INVALID_VEHICLE_ID;
        }
    }
    SCM(playerid,"Destroyed all created ( /cv ) vehicles");

    return 1;
}

cmdp:(dv)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    if(!IsPlayerInAnyVehicle(playerid)) return SCM(playerid,"You are not in any vehicle !");
    new bool:bl = false, ind = INVALID_VEHICLE_ID;
    if(IsPlayerInAnyVehicle(playerid))
    {
        for(new i = 0; i < sizeof(CreatedVehs); i++)
        {
            if(!bl)
            {
                if(CreatedVehs[i] == GetPlayerVehicleID(playerid))
                {
                    bl = true;
                    ind = i;
                }
            }
        }
        if(ind != INVALID_VEHICLE_ID)
        {
            new carid = GetPlayerVehicleID(playerid);
            DestroyVehicle(carid);
            CreatedVehs[ind] = INVALID_VEHICLE_ID;
            return SCM(playerid,"Vehicle destroyed !");
        }

    }
    return 1;
}

cmdp:(getv)
{
    if(SHSLoggedIn[playerid] == 0) return SCM(playerid,"You must log in SHS before using it commands ( /shslogin ) ");
    new id;
    if(sscanf(params,"i",id)) return SCM(playerid,"USAGE: /getv [vehicleid]");
    GetPlayerPosData(playerid);
    SetVehiclePos(id,GFFP[playerid][0],GFFP[playerid][1],GFFP[playerid][2]);
    SetVehicleZAngle(id,GFFP[playerid][3]);
    LinkVehicleToInterior(id,GIFP[playerid][0]);
    SetVehicleVirtualWorld(id,GIFP[playerid][1]);
    return 1;
}

cmdp:(shshelp)
{
    SCM(playerid,"Basic : /cv [ create vehicle ] | /dvs [ destroy all /cv vehicles ] | /dv [ destroy specefic vehicle ]");
    SCM(playerid,"Basic2: /mpos [ get and save your pos to a log ] | /shslogin login to shs");
    SCM(playerid,"DMP : /dmp [ edit dmp ] | /dmpclose [ nearest dmps ] | /dmpnext [ next DMP ID Available ]");
    SCM(playerid,"3DTextLabels : /3dlabel [ edit dynamic 3dtext label ] | /3dnext [ find next 3d ID Available ] | /3dclose [ nearest labels ]");
    SCM(playerid,"Doors : /door [ edit a door ] | /dnext [ next door ID available ] | /dname [ edit doors name ] | /dgoto [ goto specefic door ]");
    return 1;
}

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    if(SHSLoggedIn[playerid] == 1) { SCM(playerid,"/dl to see vehicle info");}
    return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(dialogid == DIALOG_SHSLOGIN)
    {
        if(response)
        {
            if(strcmp(inputtext,SHS_PASS,true) == 0)
            {
                SHSLoggedIn[playerid] = 1;
                SCM(playerid,"You are logged into SHS !");
            }else return SCM(playerid,"Wrong password !");
        }
    }
    return 1;
}

forward SCM(playerid,string[]);
public SCM(playerid,string[])
{
    SendClientMessage(playerid,COLOR_YELLOW,string);
    return 1;
}

forward Log(logtype[],string[]);
public Log(logtype[],string[])
{
    new File: LogFile = fopen(logtype,io_append);
    new stringformat[256];
    format(stringformat,sizeof(stringformat),"%s\r\n",string);
    fwrite(LogFile,stringformat);
    fclose(LogFile);
    return 1;
}

public LoadAll()
{
    LoadDMPS();
    LoadLabels();
    LoadDoors();
    printf("All DMPS , 3DTextLabels, And Doors loaded !");
    return 1;
}

SaveDMPS()
{
    new szFileInput[1024],File:fHandle = fopen("/cfgs/dmp.ini",io_write);
    for(new d = 0; d < MAX_DMP; d++)
    {
        format(szFileInput,sizeof(szFileInput),"%f|%f|%f|%i|%i|%i|%i|%i\r\n",
        DMPInfo[d][dPosX],
        DMPInfo[d][dPosY],
        DMPInfo[d][dPosZ],
        DMPInfo[d][dModel],
        DMPInfo[d][dColor],
        DMPInfo[d][dVw],
        DMPInfo[d][dInt],
        DMPInfo[d][dCreated]
        );
        fwrite(fHandle,szFileInput);
    }
    return fclose(fHandle);
}

LoadDMPS()
{
    if(!fexist("/cfgs/dmp.ini")) return 1;
    new szFileInput[1024],File:fHandle = fopen("/cfgs/dmp.ini",io_read),index = 0;
    while(index < sizeof(DMPInfo) && fread(fHandle,szFileInput))
    {
        sscanf(szFileInput,"p<|>fffiiiii",
        DMPInfo[index][dPosX],
        DMPInfo[index][dPosY],
        DMPInfo[index][dPosZ],
        DMPInfo[index][dModel],
        DMPInfo[index][dColor],
        DMPInfo[index][dVw],
        DMPInfo[index][dInt],
        DMPInfo[index][dCreated]
        );
        DestroyDynamicMapIcon(DMPInfo[index][dCreate]);
        if(DMPInfo[index][dPosX] != 0 && DMPInfo[index][dPosY] != 0 && DMPInfo[index][dPosZ] != 0)
        {
        DMPInfo[index][dCreate] = CreateDynamicMapIcon(DMPInfo[index][dPosX],DMPInfo[index][dPosY],DMPInfo[index][dPosZ],DMPInfo[index][dModel],DMPInfo[index][dColor],DMPInfo[index][dVw],DMPInfo[index][dInt],-1,100.0);
        }
        ++index;
    }
    return fclose(fHandle);
}

SaveLabels()
{
    new szFileInput[1024],File:fHandle = fopen("/cfgs/3dlabels.ini",io_write);
    for(new l = 0; l < MAX_LABELS; l++)//Note:this is AEL not AY
    {
        format(szFileInput,sizeof(szFileInput),"%f|%f|%f|%f|%i|%i|%i|%s\r\n",
        LabelInfo[l][lPosX],
        LabelInfo[l][lPosY],
        LabelInfo[l][lPosZ],
        LabelInfo[l][lDistance],
        LabelInfo[l][lColor],
        LabelInfo[l][lVw],
        LabelInfo[l][lInt],
        LabelInfo[l][lText]
        );
        fwrite(fHandle,szFileInput);
    }
    return fclose(fHandle);
}

LoadLabels()
{
    if(!fexist("/cfgs/3dlabels.ini")) return 1;
    new szFileInput[2520],File:fHandle = fopen("/cfgs/3dlabels.ini",io_read),index = 0;
    while(index < sizeof(LabelInfo) && fread(fHandle,szFileInput))
    {
        sscanf(szFileInput,"p<|>ffffiiis[42]",
        LabelInfo[index][lPosX],
        LabelInfo[index][lPosY],
        LabelInfo[index][lPosZ],
        LabelInfo[index][lDistance],
        LabelInfo[index][lColor],
        LabelInfo[index][lVw],
        LabelInfo[index][lInt],
        LabelInfo[index][lText]
        );
        DestroyDynamic3DTextLabel(LabelInfo[index][lCreate]);
        if(LabelInfo[index][lPosX] != 0 && LabelInfo[index][lPosY] != 0 && LabelInfo[index][lPosZ] != 0)
        {
            if(LabelInfo[index][lColor] == 0)
            {
            LabelInfo[index][lCreate] = CreateDynamic3DTextLabel(LabelInfo[index][lText],-1,LabelInfo[index][lPosX],LabelInfo[index][lPosY],LabelInfo[index][lPosZ],LabelInfo[index][lDistance],INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,LabelInfo[index][lVw],LabelInfo[index][lInt],-1,LabelInfo[index][lDistance]);
            }
            if(LabelInfo[index][lColor] == 1)
            {
            LabelInfo[index][lCreate] = CreateDynamic3DTextLabel(LabelInfo[index][lText],COLOR_YELLOW,LabelInfo[index][lPosX],LabelInfo[index][lPosY],LabelInfo[index][lPosZ],LabelInfo[index][lDistance],INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,LabelInfo[index][lVw],LabelInfo[index][lInt],-1,LabelInfo[index][lDistance]);
            }
            if(LabelInfo[index][lColor] == 2)
            {
            LabelInfo[index][lCreate] = CreateDynamic3DTextLabel(LabelInfo[index][lText],0x00FF00FF,LabelInfo[index][lPosX],LabelInfo[index][lPosY],LabelInfo[index][lPosZ],LabelInfo[index][lDistance],INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,LabelInfo[index][lVw],LabelInfo[index][lInt],-1,LabelInfo[index][lDistance]);
            }
            if(LabelInfo[index][lColor] == 3)
            {
            LabelInfo[index][lCreate] = CreateDynamic3DTextLabel(LabelInfo[index][lText],0xFF0000FF,LabelInfo[index][lPosX],LabelInfo[index][lPosY],LabelInfo[index][lPosZ],LabelInfo[index][lDistance],INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,LabelInfo[index][lVw],LabelInfo[index][lInt],-1,LabelInfo[index][lDistance]);
            }
            if(LabelInfo[index][lColor] == 4)
            {
            LabelInfo[index][lCreate] = CreateDynamic3DTextLabel(LabelInfo[index][lText],0xFF8000FF,LabelInfo[index][lPosX],LabelInfo[index][lPosY],LabelInfo[index][lPosZ],LabelInfo[index][lDistance],INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,LabelInfo[index][lVw],LabelInfo[index][lInt],-1,LabelInfo[index][lDistance]);
            }
            if(LabelInfo[index][lColor] == 5)
            {
            LabelInfo[index][lCreate] = CreateDynamic3DTextLabel(LabelInfo[index][lText],0x000000FF,LabelInfo[index][lPosX],LabelInfo[index][lPosY],LabelInfo[index][lPosZ],LabelInfo[index][lDistance],INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,LabelInfo[index][lVw],LabelInfo[index][lInt],-1,LabelInfo[index][lDistance]);
            }
            if(LabelInfo[index][lColor] == 6)
            {
            LabelInfo[index][lCreate] = CreateDynamic3DTextLabel(LabelInfo[index][lText],0x8000FFFF,LabelInfo[index][lPosX],LabelInfo[index][lPosY],LabelInfo[index][lPosZ],LabelInfo[index][lDistance],INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,LabelInfo[index][lVw],LabelInfo[index][lInt],-1,LabelInfo[index][lDistance]);
            }
        }
        ++index;
    }
    return fclose(fHandle);
}

SaveDoors()
{
    new szFileInput[1024],File:fHandle = fopen("/cfgs/doors.ini",io_write);
    for(new d = 0; d < MAX_DOORS; d++)
    {
    format(szFileInput,sizeof(szFileInput),"%f|%f|%f|%f|%f|%f|%f|%f|%i|%i|%i|%i|%s|%i|%i|%i|%i|%i|%i\r\n",
        DoorInfo[d][ddExteriorX],
        DoorInfo[d][ddExteriorY],
        DoorInfo[d][ddExteriorZ],
        DoorInfo[d][ddExteriorA],
        DoorInfo[d][ddInteriorX],
        DoorInfo[d][ddInteriorY],
        DoorInfo[d][ddInteriorZ],
        DoorInfo[d][ddInteriorA],
        DoorInfo[d][ddInt],
        DoorInfo[d][ddIntVW],
        DoorInfo[d][ddExtVw],
        DoorInfo[d][ddExtInt],
        DoorInfo[d][ddName],
        DoorInfo[d][ddLevel],
        DoorInfo[d][ddAdmin],
        DoorInfo[d][ddVehicleAble],
        DoorInfo[d][ddPickupType],
        DoorInfo[d][ddColor],
        DoorInfo[d][ddLock]
        );
    fwrite(fHandle,szFileInput);
    }
    return fclose(fHandle);
}

LoadDoors()
{
    if(!fexist("/cfgs/doors.ini")) return 1;
    new szFileInput[1024],File:fHandle = fopen("/cfgs/doors.ini",io_read),index = 0,string[82];
    while(index < sizeof(DoorInfo) && fread(fHandle,szFileInput))
    {
        sscanf(szFileInput,"p<|>ffffffffiiiis[32]iiiiii",
        DoorInfo[index][ddExteriorX],
        DoorInfo[index][ddExteriorY],
        DoorInfo[index][ddExteriorZ],
        DoorInfo[index][ddExteriorA],
        DoorInfo[index][ddInteriorX],
        DoorInfo[index][ddInteriorY],
        DoorInfo[index][ddInteriorZ],
        DoorInfo[index][ddInteriorA],
        DoorInfo[index][ddInt],
        DoorInfo[index][ddIntVW],
        DoorInfo[index][ddExtVw],
        DoorInfo[index][ddExtInt],
        DoorInfo[index][ddName],
        DoorInfo[index][ddLevel],
        DoorInfo[index][ddAdmin],
        DoorInfo[index][ddVehicleAble],
        DoorInfo[index][ddPickupType],
        DoorInfo[index][ddColor],
        DoorInfo[index][ddLock]
        );
        DestroyDynamicPickup(DoorInfo[index][ddCreate]);
        DestroyDynamic3DTextLabel(DoorInfo[index][ddLabel]);
        if(DoorInfo[index][ddExteriorX] != 0 && DoorInfo[index][ddExteriorY] != 0 && DoorInfo[index][ddExteriorZ] != 0 && DoorInfo[index][ddExteriorA] != 0)
        {
            switch(DoorInfo[index][ddPickupType])
            {
                case 0: { DoorInfo[index][ddCreate] = CreateDynamicPickup(1239,23,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ],DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 1: { DoorInfo[index][ddCreate] = CreateDynamicPickup(1241,23,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ],DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 2: { DoorInfo[index][ddCreate] = CreateDynamicPickup(1242,23,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ],DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 3: { DoorInfo[index][ddCreate] = CreateDynamicPickup(1272,23,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ],DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 4: { DoorInfo[index][ddCreate] = CreateDynamicPickup(1273,23,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ],DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 5: { DoorInfo[index][ddCreate] = CreateDynamicPickup(1313,23,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ],DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 6: { DoorInfo[index][ddCreate] = CreateDynamicPickup(1258,23,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ],DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 7: { DoorInfo[index][ddCreate] = CreateDynamicPickup(1318,23,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ],DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 8: { DoorInfo[index][ddCreate] = CreateDynamicPickup(1559,23,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ],DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 9: { DoorInfo[index][ddCreate] = CreateDynamicPickup(2894,23,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ],DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 10: { DoorInfo[index][ddCreate] = CreateDynamicPickup(1279,23,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ],DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 11: { DoorInfo[index][ddCreate] = CreateDynamicPickup(1274,23,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ],DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 12: { DoorInfo[index][ddCreate] = CreateDynamicPickup(1275,23,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ],DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 13: { DoorInfo[index][ddCreate] = CreateDynamicPickup(1316,23,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ],DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 14: { DoorInfo[index][ddCreate] = CreateDynamicPickup(1314,23,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ],DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
            }
            format(string,sizeof(string)," %s \n ID : %d",DoorInfo[index][ddName],index);
            switch(DoorInfo[index][ddColor])
            {
                case 0: { DoorInfo[index][ddLabel] = CreateDynamic3DTextLabel(string,-1,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ]+0.5,50.0,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 1: { DoorInfo[index][ddLabel] = CreateDynamic3DTextLabel(string,0x8000FFFF,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ]+0.5,50.0,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 2: { DoorInfo[index][ddLabel] = CreateDynamic3DTextLabel(string,0xFFFF80FF,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ]+0.5,50.0,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 3: { DoorInfo[index][ddLabel] = CreateDynamic3DTextLabel(string,0x80FF00FF,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ]+0.5,50.0,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 4: { DoorInfo[index][ddLabel] = CreateDynamic3DTextLabel(string,0x00FFFFFF,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ]+0.5,50.0,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 5: { DoorInfo[index][ddLabel] = CreateDynamic3DTextLabel(string,0x0080C0FF,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ]+0.5,50.0,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 6: { DoorInfo[index][ddLabel] = CreateDynamic3DTextLabel(string,0xFF0000FF,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ]+0.5,50.0,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 7: { DoorInfo[index][ddLabel] = CreateDynamic3DTextLabel(string,0x0000A0FF1,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ]+0.5,50.0,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 8: { DoorInfo[index][ddLabel] = CreateDynamic3DTextLabel(string,0xFFFFFFFF,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ]+0.5,50.0,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
                case 9: { DoorInfo[index][ddLabel] = CreateDynamic3DTextLabel(string,0x000000FF,DoorInfo[index][ddExteriorX],DoorInfo[index][ddExteriorY],DoorInfo[index][ddExteriorZ]+0.5,50.0,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,0,DoorInfo[index][ddExtVw],DoorInfo[index][ddExtInt],-1,50.0); }
            }
        }
        ++index;
    }
    return fclose(fHandle);
}

stock GetPName(playerid)
{
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    return name;
}
stock GetPlayerPosData(playerid)
{
    GetPlayerPos(playerid,GFFP[playerid][0],GFFP[playerid][1],GFFP[playerid][2]);
    GetPlayerFacingAngle(playerid,GFFP[playerid][3]);
    GIFP[playerid][0] = GetPlayerInterior(playerid);
    GIFP[playerid][1] = GetPlayerVirtualWorld(playerid);
    return 1;
}
stock GetDay()
{
    new y,m,day;
    getdate(y,m,day);
    return day;
}
stock GetMonth()
{
    new y,month,d;
    getdate(y,month,d);
    return month;
}
stock GetYear()
{
    new year,m,d;
    getdate(year,m,d);
    return year;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)