21.02.2011, 17:55
(
Последний раз редактировалось Kwarde; 27.04.2011 в 08:29.
)
Hi there!
First of all: I don't know if it's made yet. As far as I know, it isn't. I couldn't find it in the search option, so I decided to make it.
With this include, you can create area's and remove/update them. With a callback, you can check if a player did enter/exit an area.
Functions
Installation
This isn't hard. Just make a new file in your pawno/include folder and put the content from the download in it.
Then, include the function in your filterscript/gamemode.
You can use the next callbacks:
OnPlayerEnterArea(playerid, areaid);
OnPlayerExitArea(playerid, areaid);
Download (v1.1)
http://pastebin.com/qmVwrhLg
Changelog
v1.0:
* Script created and released
v1.1:
* Checks if "IsPlayerInArea" exists. If it does, function'll be named as "IsPlayerInAreaEx".
Test
I've tested it with this gamemode:
http://pastebin.com/zQzmaZti
Just go to ganton and enter+exit it. You'll get the message that you'd enter/exit it.
I'd also did do it on Persing Square. Both working! GetAreaInfo did also work.
Known bugs
None yet. Please report them
I hope that something like this didn't exist yet. Really... :P
Regards,
Kevin
First of all: I don't know if it's made yet. As far as I know, it isn't. I couldn't find it in the search option, so I decided to make it.
With this include, you can create area's and remove/update them. With a callback, you can check if a player did enter/exit an area.
Functions
Код:
IsPlayerInArea(playerid, areaid); - Check if a player is in 'areaid' IsAreaCreated(areaid); - Check if the 'areaid' is created or not GetLowestFreeAreaID(); - You don't need to use it. This is to prevent eventually bugs. It checks the first free area id CreateArea(Float:MinX, Float:MaxX, Float:MinY, Float:MaxY, Float:MinZ = -1.0, Float:MaxZ = -1.0) - Creates an area CreateArea2(Float:MinX, Float:MinY, Float:MaxX, Float:MaxY, Float:MinZ = -1.0, Float:MaxZ = -1.0) - Creates an area (gangzone format) CreateArea3(Float:MaxX, Float:MinX, Float:MaxY, Float:MinY, Float:MinZ = -1.0, Float:MaxZ = -1.0) - Creates an area (worldbounds format) DeleteArea(areaid) - Delete an area UpdateArea(areaid, Float:MinX, Float:MaxX, Float:MinY, Float:MaxY, Float:MinZ = -1.0, Float:MaxZ = -1.0) - Updates an area it's position UpdateArea2(areaid, Float:MinX, Float:MinY, Float:MaxX, Float:MaxY, Float:MinZ = -1.0, Float:MaxZ = -1.0) - Updates an area it's position (gangzone format) UpdateArea3(areaid, Float:MaxX, Float:MinX, Float:MaxY, Float:MinY, Float:MinZ = -1.0, Float:MaxZ = -1.0) - Updates an area it's position (worldbounds format) GetAreaInfo(areaid, &Float:MinX, &Float:MaxX, &Float:MinY, &Float:MaxY, &Float:MinZ, &Float:MaxZ) - Get's the position of an area (use variables to get the info!)
This isn't hard. Just make a new file in your pawno/include folder and put the content from the download in it.
Then, include the function in your filterscript/gamemode.
You can use the next callbacks:
OnPlayerEnterArea(playerid, areaid);
OnPlayerExitArea(playerid, areaid);
Download (v1.1)
http://pastebin.com/qmVwrhLg
Changelog
v1.0:
* Script created and released
v1.1:
* Checks if "IsPlayerInArea" exists. If it does, function'll be named as "IsPlayerInAreaEx".
Test
I've tested it with this gamemode:
http://pastebin.com/zQzmaZti
Just go to ganton and enter+exit it. You'll get the message that you'd enter/exit it.
I'd also did do it on Persing Square. Both working! GetAreaInfo did also work.
Known bugs
None yet. Please report them
I hope that something like this didn't exist yet. Really... :P
Regards,
Kevin