Все вопросы по скриптингу для AMXX, помощь в редактировании плагинов.
Модераторы: Subb98, liFe iS GoOD
Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.
В данном разделе форума разрешено создавать темы, касающие только скриптинга для AMX Mod X.
Правила при создании новой темы:
1. При вставке кода плагина необходимо использовать тег [code=php].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. При описании проблемы или запросе на помощь в редактировании плагина обязательно выкладывайте исходник sma плагина.
deadkid56 » 11 сен 2018, 22:40
Не получается создать тач для соприкосновения с зоной:
- Код: Выделить всё
case MAIN_KEY_ENTITY_DELIVERY_ZONE_NAME: {
formatex(g_szDeliveryZone, charsmax(g_szDeliveryZone), szValue);
new iEntity = -1;
while ((iEntity = rg_find_ent_by_class(iEntity, g_szDeliveryZone)))
{
g_iGlobalEnt = iEntity;
}
}
- Код: Выделить всё
public plugin_init() {
register_event("HLTV", "event_HLTV", "a", "1=0", "2=0");
if(g_iGlobalEnt)
{
SetTouch(g_iGlobalEnt, "Touch_DeliveryZone");
server_print("TouchADD");
}
В чем может быть ошибка?
-
deadkid56
-
- Сообщения: 42
- Зарегистрирован: 09 авг 2018, 10:41
- Благодарил (а): 8 раз.
- Поблагодарили: 4 раз.
- Языки программирования: Я ничего не знаю
Garey » 13 сен 2018, 21:19
как минимум надо фул код выкладывать а не огрызки непонятно чего.
-
Garey
-
- Сообщения: 85
- Зарегистрирован: 24 дек 2010, 03:12
- Благодарил (а): 4 раз.
- Поблагодарили: 37 раз.
flymic24 » 14 сен 2018, 01:00
deadkid56, Почему бы не убрать вот это:
- Код: Выделить всё
if(g_iGlobalEnt)
{
SetTouch(g_iGlobalEnt, "Touch_DeliveryZone");
server_print("TouchADD");
}
а это:
- Код: Выделить всё
case MAIN_KEY_ENTITY_DELIVERY_ZONE_NAME: {
formatex(g_szDeliveryZone, charsmax(g_szDeliveryZone), szValue);
new iEntity = -1;
while ((iEntity = rg_find_ent_by_class(iEntity, g_szDeliveryZone)))
{
g_iGlobalEnt = iEntity;
}
}
Заменить на:
- Код: Выделить всё
case MAIN_KEY_ENTITY_DELIVERY_ZONE_NAME: {
formatex(g_szDeliveryZone, charsmax(g_szDeliveryZone), szValue);
register_touch(g_szDeliveryZone, "player", "Touch_DeliveryZone");
}
-
flymic24
-
- Сообщения: 209
- Зарегистрирован: 05 окт 2012, 17:29
- Откуда: Bryansk
- Благодарил (а): 4 раз.
- Поблагодарили: 76 раз.
- Опыт программирования: Около года
- Языки программирования: Counter-Strike 1.6
-
deadkid56 » 16 сен 2018, 19:48
flymic24 писал(а):deadkid56, Почему бы не убрать вот это:
- Код: Выделить всё
if(g_iGlobalEnt)
{
SetTouch(g_iGlobalEnt, "Touch_DeliveryZone");
server_print("TouchADD");
}
а это:
- Код: Выделить всё
case MAIN_KEY_ENTITY_DELIVERY_ZONE_NAME: {
formatex(g_szDeliveryZone, charsmax(g_szDeliveryZone), szValue);
new iEntity = -1;
while ((iEntity = rg_find_ent_by_class(iEntity, g_szDeliveryZone)))
{
g_iGlobalEnt = iEntity;
}
}
Заменить на:
- Код: Выделить всё
case MAIN_KEY_ENTITY_DELIVERY_ZONE_NAME: {
formatex(g_szDeliveryZone, charsmax(g_szDeliveryZone), szValue);
register_touch(g_szDeliveryZone, "player", "Touch_DeliveryZone");
}
Именно ваш вариант мне подсказал решение ))
-
deadkid56
-
- Сообщения: 42
- Зарегистрирован: 09 авг 2018, 10:41
- Благодарил (а): 8 раз.
- Поблагодарили: 4 раз.
- Языки программирования: Я ничего не знаю
Вернуться в Скриптинг
Кто сейчас на конференции
Сейчас этот форум просматривают: Yandex [Bot] и гости: 11