SA-MP Forums

SA-MP Forums (https://forum.sa-mp.com/index.php)
-   Includes (https://forum.sa-mp.com/forumdisplay.php?f=83)
-   -   [Include] AutoMove (create automatic gates with ONE LINE!) (https://forum.sa-mp.com/showthread.php?t=641392)

Lokii 15/09/2017 02:40 PM

AutoMove (create automatic gates with ONE LINE!)
 
AutoMove

AutoMove creates any object and moves it when some player is in specific radius of that object.

you can make any object move with this not only gates.

The script i used in the video:

Code:

#include <a_samp>
#include <AutoMove>

#define FILTERSCRIPT

public OnFilterScriptInit()
{
        CreateAutoObject(0, 971, 551.22101, 1659.31995, 9.59222, 0.00000, 0.00000, 304.77103, 75.0, 15.0, 557.70056, 1650.47827, 9.59222, 3);
        CreateAutoObject(1, 971, 532.47937, 1688.40173, 10.33070, 0.00000, 0.00000, 26.49157, 95.0, 20.0, 532.47937, 1688.40173, 6.19246, 2);
        return 1;
}

Functions:

CreateAutoObject(id, modelid, Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz, Float:stream_distance, Float:move_distance, Float:tox, Float:toy, Float:toz, Float:move_speed)

DestroyAutoObject(id)

DestroyAllAutoObjects()

PASTEBIN: https://pastebin.com/tmBziB3a

VIDEO: https://www.youtube.com/watch?v=-p-aYxh31lw

Credits:

ME: for AutoMove
incognito: for streamer
******: for y_hooks


AutoMove V2:

1. Supports virtural worlds
2. Supports interiors
3. Added callback OnAutoObjectOpen(playerid, auto_objectid)
4. Added callback OnAutoObjectClose(playerid, auto_objectid)
5. Added function OpenAutoObject(id)

6. Added function CloseAutoObject(id)
7. Supports rotations

Now you can make the object move only when player is on foot, only in vehicle or both and a lot more stuff

Functions:

CreateAutoObject(id, modelid, Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz, worldid = -1, interiorid = -1, Float:stream_distance, Float:move_distance, Float:tox, Float:toy, Float:toz, Float:torx, Float:tory, Float:torz, Float:move_speed)

OpenAutoObject(id)
CloseAutoObject(id)
DestroyAutoObject(id)
DestroyAllAutoObjects()

PASTEBIN: https://pastebin.com/SZMuHizQ

example:

Code:

#include <a_samp>
#include <AutoMove>

#define FILTERSCRIPT

public OnFilterScriptInit()
{
        CreateAutoObject(0, 971, 551.22101, 1659.31995, 9.59222, 0.00000, 0.00000, 304.77103, -1, -1, 75.0, 15.0, 557.70056, 1650.47827, 9.59222, 0.00000, 0.00000, 304.77103, 3);  //Cars only.
        CreateAutoObject(1, 971, 532.47937, 1688.40173, 10.33070, 0.00000, 0.00000, 26.49157, -1, -1, 95.0, 20.0, 532.47937, 1688.40173, 6.19246, 0.00000, 0.00000, 26.49157, 2); //Players only.
        CreateAutoObject(2, 971, -62.40447, 1341.03003, 9.79037, 0.00000, 0.00000, 0.00000, -1, -1, 100.5, 10.0, -59.96775, 1344.00391, 9.79037, 0.00000, 0.00000, 300.6515, 2.5); //Cars and Players.
        return 1;
}

public OnAutoObjectOpen(playerid, auto_objectid)
{
        switch(auto_objectid)
        {
            case 0: //object id 0, can enter only while in vehicle
            {
                if(IsPlayerInAnyVehicle(playerid))  //if player enter with vehicle open
                {
                    SendClientMessage(playerid, 0xFFFF00FF, "Welcome");
                }
                else //if player enter on foot dont open
                {
                    CloseAutoObject(0);  //were using the close function because it automaticly opens, so if we want the object to stay and not move we have to use that function
                SendClientMessage(playerid, 0xFF0000FF, "You have to be in a vehicle");
                }
            }
            case 1:
            {
                if(!IsPlayerInAnyVehicle(playerid)) //opposite of id 0
                {
                    SendClientMessage(playerid, 0xFFFF00FF, "Welcome");
                }
                else
                {
                    CloseAutoObject(1);
                SendClientMessage(playerid, 0xFF0000FF, "Vehicles are not allowed");
                }
            }
            case 2: //opens not matter on foot or in vehicle
            {
                SendClientMessage(playerid, 0xFFFF00FF, "Welcome");
            }
        }
        return 1;
}

V1 vs V2 compressions https://www.youtube.com/watch?v=JAUAM2vzulI

AutoMove V2.1
1. Supports NPC's now

PASTEBIN: https://pastebin.com/QTF1z2re


FOR THOSE WHO DONT TO USE THE Y_HOOKS VERSION:

AutoMove V2.2
1. y_hooks is not required anymore
AMX AVERAGE SIZE:

V1: 39.8 kb
V2: 45.9 kb
V2.1: 45.9 kb
V2.2: 22.4 kb

PASTEBIN: https://pastebin.com/RxUp8Bdr

X337 15/09/2017 02:44 PM

Re: AutoMove (create automatic gates with ONE LINE!)
 
Cool. A question, why do you use
Code:

I_AutoMove[id][am_areaid] = CreateDynamicSphere(0, 0, 0, 0, -2, -1, -1);
instead of deleting the area?

Meller 15/09/2017 02:57 PM

Re: AutoMove (create automatic gates with ONE LINE!)
 
Useless.




1star ;d

Whatname 15/09/2017 07:47 PM

Re: AutoMove (create automatic gates with ONE LINE!)
 
not bad, i was planning to make something like that

Eoussama 15/09/2017 07:49 PM

Re: AutoMove (create automatic gates with ONE LINE!)
 
Cool consept.

Tort 17/09/2017 05:57 PM

Re: AutoMove (create automatic gates with ONE LINE!)
 
good job

Deadpoop 17/09/2017 06:08 PM

Re: AutoMove (create automatic gates with ONE LINE!)
 
nice

Pottus 18/09/2017 01:34 AM

Re: AutoMove (create automatic gates with ONE LINE!)
 
You can use the extraid with the streamer to assign the array index in which your gate data is located so you don't have to do any looping.

Code:

hook OnPlayerEnterDynamicArea(playerid, areaid)
{
      if(playerid != INVALID_PLAYER_ID && !IsPlayerNPC(playerid))
      {
            for(new j = 0; j < MAX_AUTO_OBJECTS;j++)
            if(areaid == I_AutoMove[j][am_areaid])


DonaldDuck 18/09/2017 02:55 AM

Re: AutoMove (create automatic gates with ONE LINE!)
 
Nice i was looking for this.

memorex2018 18/06/2019 09:31 AM

Re: AutoMove (create automatic gates with ONE LINE!)
 
if we could password (like gates) this it would be PERFECT ,anyone know what we add to the script for this by anychance ?

DIRTYBYT3 18/06/2019 06:55 PM

Re: AutoMove (create automatic gates with ONE LINE!)
 
Looks nice good job!

Nickk888 30/06/2019 11:08 PM

Re: AutoMove (create automatic gates with ONE LINE!)
 
Quote:

Originally Posted by memorex2018 (Post 4102635)
if we could password (like gates) this it would be PERFECT ,anyone know what we add to the script for this by anychance ?

You could try my include: http://forum.sa-mp.com/showthread.php?t=654179


All times are GMT. The time now is 01:47 AM.

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.