Иконка ресурса

WTF#MLG

Эффект кузи!
Сообщения
365
Реакции
142
  • Автор ресурса
  • #1
Пользователь WTF#MLG разместил новый ресурс:

Dev Zones - Плагин для создания зон

Увидел данную тему на alliedmods , но тут её почему-то нет ,хотя он ( по моему субъективному мнению ) немного лучше map zones ,по крайней мере это лучшее (мб) ,что я нашёл в публичном доступе...

Взято с -> [Any] Dev Zones (with natives for developers) - AlliedModders

Авторы : Franc1sco, root, Totenfluch

Как работает данный плагин ?
Пишем !zones -> Создаём зону ,cохраняем , -> выбираем цвет и т.д по желанию , ->...

Узнать больше об этом ресурсе...
 
Последнее редактирование:

abduabuarab

Участник
Сообщения
53
Реакции
10
lights module

How to use:
Create zones with prefix lightSizeColor. Example zone name would be "light900red"
B701697038E042982A55A584F713D6267AD52478

PHP:
#include <sourcemod>
#include <sdktools>
#include <devzones>

char g_ColorNames[][] = {
    {"white", "255 255 255 255"},
    {"red", "255 0 0 255"},
    {"blue", "0 0 255 255"},
    {"green", "0 255 0 255"},
};

char g_ColorValues[][] = {
    {"255 255 255 255"},
    {"255 0 0 255"},
    {"0 0 255 255"},
    {"0 255 0 255"},
};


public void Zone_OnCreated(String:zone[])
{
    if (StrContains(zone, "light", false) != 0)return;
   
    char temp[124];
    strcopy(temp, 124, zone);
   
   
    ReplaceString(temp, 124, "light", "", false);
   
    float Position[3];
   
    Zone_GetZonePosition(zone, false, Position);
   
    int index = 0;
   
    for (int i = 0; i < sizeof(g_ColorNames); i++) {
        if(ReplaceString(temp, 124, g_ColorNames[i], "", false) > 0)
        {
            index = i;
            break;
        }
    }
   
    LightCreate(Position, StringToFloat(temp), index);
}

LightCreate(Float:pos[3], float size, int colorindex)  
{
    new iEntity = CreateEntityByName("light_dynamic");
    DispatchKeyValue(iEntity, "inner_cone", "0");
    DispatchKeyValue(iEntity, "cone", "80");
    DispatchKeyValue(iEntity, "brightness", "1");
    DispatchKeyValueFloat(iEntity, "spotlight_radius", 150.0);
    DispatchKeyValue(iEntity, "pitch", "90");
    DispatchKeyValue(iEntity, "style", "1");

    DispatchKeyValue(iEntity, "_light", g_ColorValues[colorindex]);
    DispatchKeyValueFloat(iEntity, "distance", size);
   
    DispatchSpawn(iEntity);
    TeleportEntity(iEntity, pos, NULL_VECTOR, NULL_VECTOR);
    AcceptEntityInput(iEntity, "TurnOn");
}
 

WTF#MLG

Эффект кузи!
Сообщения
365
Реакции
142
  • Автор ресурса
  • #3
lights module

How to use:
Create zones with prefix lightSizeColor. Example zone name would be "light900red"
B701697038E042982A55A584F713D6267AD52478

PHP:
#include <sourcemod>
#include <sdktools>
#include <devzones>

char g_ColorNames[][] = {
    {"white", "255 255 255 255"},
    {"red", "255 0 0 255"},
    {"blue", "0 0 255 255"},
    {"green", "0 255 0 255"},
};

char g_ColorValues[][] = {
    {"255 255 255 255"},
    {"255 0 0 255"},
    {"0 0 255 255"},
    {"0 255 0 255"},
};


public void Zone_OnCreated(String:zone[])
{
    if (StrContains(zone, "light", false) != 0)return;
 
    char temp[124];
    strcopy(temp, 124, zone);
 
 
    ReplaceString(temp, 124, "light", "", false);
 
    float Position[3];
 
    Zone_GetZonePosition(zone, false, Position);
 
    int index = 0;
 
    for (int i = 0; i < sizeof(g_ColorNames); i++) {
        if(ReplaceString(temp, 124, g_ColorNames[i], "", false) > 0)
        {
            index = i;
            break;
        }
    }
 
    LightCreate(Position, StringToFloat(temp), index);
}

LightCreate(Float:pos[3], float size, int colorindex)
{
    new iEntity = CreateEntityByName("light_dynamic");
    DispatchKeyValue(iEntity, "inner_cone", "0");
    DispatchKeyValue(iEntity, "cone", "80");
    DispatchKeyValue(iEntity, "brightness", "1");
    DispatchKeyValueFloat(iEntity, "spotlight_radius", 150.0);
    DispatchKeyValue(iEntity, "pitch", "90");
    DispatchKeyValue(iEntity, "style", "1");

    DispatchKeyValue(iEntity, "_light", g_ColorValues[colorindex]);
    DispatchKeyValueFloat(iEntity, "distance", size);
 
    DispatchSpawn(iEntity);
    TeleportEntity(iEntity, pos, NULL_VECTOR, NULL_VECTOR);
    AcceptEntityInput(iEntity, "TurnOn");
}

Либо я туплю ,либо
public void Zone_OnCreated(String:zone[])
должно быть
public int Zone_OnCreated(String:zone[])

devzones_lights.sp(20) : error 180: function return type differs from prototype. expected 'int', but got 'void'

?
 

Someone

Участник
Сообщения
1,933
Реакции
1,653
Либо я туплю ,либо
public void Zone_OnCreated(String:zone[])
должно быть
public int Zone_OnCreated(String:zone[])

devzones_lights.sp(20) : error 180: function return type differs from prototype. expected 'int', but got 'void'

?
При старом синтаксисе никто никогда не ставил void, по этому компилятор считает, что функция возвращает/принимает int. Инк на старом синтаксисе.
 

Aztec

Участник
Сообщения
117
Реакции
32
зоны друг в друга ставить можно?
 

WTF#MLG

Эффект кузи!
Сообщения
365
Реакции
142
  • Автор ресурса
  • #6
зоны друг в друга ставить можно?
можно ,я таким образом делал anticampct и anticamptt зоны + nodamage ещё туды
--- Добавлено позже ---
Насчёт anticamp зон ,бывают баги ,иногда выходя из зоны таймер не сбрасывается и даже не в зоне может убить...
 
Последнее редактирование:

ZoOm

Участник
Сообщения
106
Реакции
25
Не сохраняются зоны в конфиг, ошибко нет, CS:S v34 sm 1.9.0.6224
 

asd& [BLR]

Участник
Сообщения
136
Реакции
20
Не сохраняются зоны в конфиг, ошибко нет, CS:S v34 sm 1.9.0.6224
А у меня название не сохраняет, даже в ручную в конфиге переписываю, и при рестарте карты обратно ставится на дефолт "Zone 1,2,3...."

РЕШЕНО. После создания зон приходится в режиме редактирования заново устанавливать название.
 

ZoOm

Участник
Сообщения
106
Реакции
25
А у меня название не сохраняет, даже в ручную в конфиге переписываю, и при рестарте карты обратно ставится на дефолт "Zone 1,2,3...."

РЕШЕНО. После создания зон приходится в режиме редактирования заново устанавливать название.
Не в этом дело, не сохраняет конфиг в configs/dev_zones/mapname.zone.txt
 

ZoOm

Участник
Сообщения
106
Реакции
25
А перед сохранением название зоны вписываешь в чат?
Да, я знаю что с 1 раза не сохраняется и нужно повторно сохранять, достаточно обновить конфиг прям на сервере и все пропадает
--- Добавлено позже ---
Я его правда на sm 1.9 компилил почти 20 сек, но ни ошибок ни варнингов не был
 

FokS

Участник
Сообщения
422
Реакции
52
можно ,я таким образом делал anticampct и anticamptt зоны + nodamage ещё туды
--- Добавлено позже ---
Насчёт anticamp зон ,бывают баги ,иногда выходя из зоны таймер не сбрасывается и даже не в зоне может убить...
Не нашли как исправить?
 

iLoco

Пишу плагины за печеньки 🍪🍪🍪
Сообщения
2,265
Реакции
1,323
Можете написать модуль для вызова cmd команды?
 

xek

Рыба клоун
Сообщения
1,652
Реакции
636
Не работают модули. У меня только зона "Start"
 

iLoco

Пишу плагины за печеньки 🍪🍪🍪
Сообщения
2,265
Реакции
1,323
Почему данный плагин (ядро) имеет вес под 900кб при столь малом коде?
1578156684657.png
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,521
Реакции
4,980
наверное потому, что это обычный говнокодинг от испанца?

Взять тот же массив int g_iZones[2048][MAX_ZONES][g_eList], где используется только первые 66 ячеек, т.к. в первом параметре используется только индекс игроков.
 

Ammy

Участник
Сообщения
81
Реакции
16
@WTF#MLG можно ли сделать для Teleport Zones фишку чтобы попасть в телепорт можно было по нажатию на неё кнопкой E.
 

Miroha

Участник
Сообщения
1,124
Реакции
134
Пацаны нашёл баг не могу исправить кто сможет помогите.
Зашёл на сервер и ничего не могу сделать персонаж сам двигается назад в угол карты, а когда я выключаю плагин devzones.smx то тогда я просто стою на месте.
 
Сверху Снизу