Mr_Swag

[CS:GO/CS:S] Dev Zones (with natives for developers)

Recommended Posts

[CS:GO/CS:S] Dev Zones (with natives for developers)


Технический плагин, разработанный для создателей плагинов, помогает создавать специальные зоны для взаимодействия.

Работает с любой игрой.

Зоны сохраняются в: configs/dev_zones/mapname.zone.txt

 

Настройки:

sm_devzones_filter "1"  - 1 = зона распознает только живых игроков 0 = распознает всех
sm_devzones_mode "1" - 0 =Проверяет каждые X секунд покинул игрок зону или нет, 1 = распознает с помощью OnStartTouch and OnEndTouch (less CPU consume)
sm_devzones_checker "5.0" - checks and beambox refreshs per second, low value = more precise but more CPU consume, More hight = less precise but less CPU consume
sm_devzones_model "models/error.mdl" - модель энтити зоны

 

Команда одна:

sm_zones или !zones - открывает меню управления зонами

Для разработчиков:

/**
 * Check if a player are there in a zone
 *
 * @param client     Player for check
 * @String zone     Zone name
 * @bool equal     Check exact zone name or parcial name
 * @bool caseSensitive     If true, comparison is case sensitive. If false, comparison is case insensitive.
 * @return true if player are there in the zone given in Zone String
 */
native bool:Zone_IsClientInZone(client, String:zone[], bool:equal = true, bool:caseSensitive = false);

/**
 * Check if a position is in a zone
 *
 * @param client     Player for check
 * @String zone     Zone name
 * @float posx      X-Pos
 * @float posx      Y-Pos
 * @float posx      Z-Pos
 * @return true if position is in a zone or not
 */
native bool Zone_isPositionInZone(char[] zone, float posx, float posy, float posz, bool equal = true);

/**
 * Check if zone exists
 *
 * @String zone     Zone name
 * @bool equal     Check exact zone name or parcial name
 * @bool caseSensitive     If true, comparison is case sensitive. If false, comparison is case insensitive.
 * @return true if zone exist
 */
native bool:Zone_CheckIfZoneExists(String:zone[], bool:equal = true, bool:caseSensitive = false);

/**
 * Called when a player has entered in a zone.
 * @param client   client that has entered in the zone.
 * @String zone   Zone name.
 */
forward Zone_OnClientEntry(client, String:zone[]);

/**
 * Called when a player has left a zone.
 * @param client   client that has left the zone.
 * @String zone   Zone name.
 */
forward Zone_OnClientLeave(client, String:zone[]);

/**
 * Get a zone position
 * @String zone   Zone name to search position.
 * @bool caseSensitive     If true, comparison is case sensitive. If false, comparison is case insensitive.
 * @Float Position   Array when the zone position will be copied
 * @return true on successfully, false otherwise
 */
native Zone_GetZonePosition(String:zone[], bool:caseSensitive = false, Float:Position[3]);


/*
		@Param1 -> int client
		@Param2 -> char[64] zoneBuffer
	
		@return true if zone found false if not
	*/
native bool Zone_getMostRecentActiveZone(int client, char zoneBuffer[64]); 

/**
 * Called when a zone is created.
 * @String zone   Zone name.
 */
forward Zone_OnCreated(String:zone[]);

 

 


 

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас