15:19
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
          





Рекомендуем:





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
[GM] The Big PEN1:LS v2.00 ... 04.12.2017
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: AXE, Weddew  
ShowPlayerDialog и OnDialogResponse где return 1;
[PZ]KYZ[AIR]Дата: Пятница, 25.06.2010, 16:06 | Сообщение # 1
Освоившийся
Группа: Продвинутые
Сообщений: 105
Награды: 1
Город: Москва
Репутация: 7
Замечания: 0%
Статус:
правельно или не правельно?
Code
if(dialogid == 89)
{
if(response)
{
if(listitem == 0)
{
//что делаем
}
if(listitem == 1)
{
// что делаем
}
}
else // что делаем
return 1;
}

Правлено ли это написано

Code
if(dialogid == 17 || 18)
{
if(!response) return 1;
switch(listitem)
{
case 0:
{
SetPlayerHealth(playerid,0);
}

}
}
return 1;
}

а здесь? где ошибка? у меня очень много диалоговых акон и некоторые из них не известно какие выполняют помимо своих заданий есчё и чужие где в этих кодах допущена ошибка


Сайт ордена "Позорная звезда"
www.orden-pz.ucoz.ru

Патч делаеться в игре русский текст и звёзды поиса (встаёт НАЛЮБУЮ gta sa)

_LexA_Дата: Пятница, 25.06.2010, 16:40 | Сообщение # 2
Долгожитель
Группа: Продвинутые
Сообщений: 1437
Награды: 161
Город: Ростов-на-Дону
Репутация: 563
Замечания: 20%
Статус:
if(dialogid == 17 || dialogid == 18)
{
if(!response) return 1;
switch(listitem)
{
case 0:
{
SetPlayerHealth(playerid,0);
}
}
return 1;
}

[PZ]KYZ[AIR]Дата: Суббота, 26.06.2010, 18:57 | Сообщение # 3
Освоившийся
Группа: Продвинутые
Сообщений: 105
Награды: 1
Город: Москва
Репутация: 7
Замечания: 0%
Статус:
а по поводу первого
спасибо



Сайт ордена "Позорная звезда"
www.orden-pz.ucoz.ru

Патч делаеться в игре русский текст и звёзды поиса (встаёт НАЛЮБУЮ gta sa)

_LexA_Дата: Суббота, 26.06.2010, 21:40 | Сообщение # 4
Долгожитель
Группа: Продвинутые
Сообщений: 1437
Награды: 161
Город: Ростов-на-Дону
Репутация: 563
Замечания: 20%
Статус:
Quote (|PZ|KYZ|AIR|)
а по поводу первого

верно там все

[PZ]KYZ[AIR]Дата: Воскресенье, 27.06.2010, 17:21 | Сообщение # 5
Освоившийся
Группа: Продвинутые
Сообщений: 105
Награды: 1
Город: Москва
Репутация: 7
Замечания: 0%
Статус:
Code
if((dialogid == 15) || (dialogid == 16))
{
if(response)
{
if((listitem == 0) && (GetPlayerTeam( playerid ) == 0))
{
SetPlayerArmour(playerid, 100.0);

}

if((listitem == 0) && (GetPlayerTeam( playerid ) == 1))
{
SetPlayerArmour(playerid, 100.0);

}

}
return 1;
}

а тут что не так


Сайт ордена "Позорная звезда"
www.orden-pz.ucoz.ru

Патч делаеться в игре русский текст и звёзды поиса (встаёт НАЛЮБУЮ gta sa)

_LexA_Дата: Воскресенье, 27.06.2010, 17:38 | Сообщение # 6
Долгожитель
Группа: Продвинутые
Сообщений: 1437
Награды: 161
Город: Ростов-на-Дону
Репутация: 563
Замечания: 20%
Статус:
if(dialogid == 15 || dialogid == 16)
{
if(response)
{
if(listitem == 0)
{
if(GetPlayerTeam(playerid) == 0) SetPlayerArmour(playerid, 100.0);
if(GetPlayerTeam(playerid) == 1) SetPlayerArmour(playerid, 100.0);
}
}
}

abhorДата: Воскресенье, 27.06.2010, 18:23 | Сообщение # 7
Уверенный в себе
Группа: Продвинутые
Сообщений: 184
Награды: 3
Город: Оттава
Репутация: 108
Замечания: 0%
Статус:
[PZ]KYZ[AIR],
Code
if(dialogid == ИДДИАЛОГА && response)
     {
         switch(listitem)
         {
             case 0:
             {
                 ДЕЙСТВИЕ
             }
             case 1:
             {
                 ДЕЙСТВИЕ
             }
             case 2:
             {
                 ДЕЙТСВИЕ
             }
             case 3:
             {
                 ДЕЙТСВИЕ
             }
         }
     }



HostName: [MoD] Call Of Duty - Urban Clashes. FREE VIP!
Address: 91.121.164.164:8077
brontozavrДата: Вторник, 29.06.2010, 10:10 | Сообщение # 8
Уважаемый человек
Группа: Продвинутые
Сообщений: 880
Награды: 13
Репутация: 191
Замечания: 40%
Статус:
[PZ]KYZ[AIR],
Нафига ты везде в обработке диалогов ставишь return 1; ? Оно все и без этого работает хорошо, просто правильно делай обработку.



Сообщение отредактировал brontozavr - Вторник, 29.06.2010, 10:11
C@H4E3Дата: Вторник, 29.06.2010, 21:13 | Сообщение # 9
Новенький
Группа: Пользователи
Сообщений: 35
Награды: 1
Город: Рыбинск
Репутация: 5
Замечания: 0%
Статус:
[PZ]KYZ[AIR],
Quote
у меня очень много диалоговых акон и некоторые из них не известно какие выполняют помимо своих заданий есчё и чужие где в этих кодах допущена ошибка

Скобки фигурные проверь всели на месте, и именно тамли, ид диалогов проверь, убери лишние обработки в коде, и наконец избавься от return 1 в обработке каждого диалога, достаточно одного return 1 в конце процедуры обработки этих диалогов. И в конце концов, почитай литературу, т.к. вопросы у тебя возникают еще на начальном уровне, а дальше их больше будет если сам за ум невозьмешься.



-------------------------------------------
--->> Хотим реанимировать мод CityLife и yarru <<---
-------------------------------------------
http://www.samp-rus.com/forum/15-442-521751-16-1478028953
StelsДата: Вторник, 29.06.2010, 23:18 | Сообщение # 10
Группа: I'm V.I.P.
Сообщений: 3167
Награды: 32
Город: Каменск-Уральский
Репутация: 828
Замечания: 0%
Статус:
...



Полезные ссылки:
GTA:SA спецсборка для SA-MP / GTA:SA-MP ver. 0.3a / GTA:SA-MP ver. 0.2x / Руссификатор геймтекста в GTA:SA(рекомендуется) / Классная игрушка!(Рекомендую!) / Пак русских шрифтов.


Сообщение отредактировал Stels - Вторник, 29.06.2010, 23:19
stepmexДата: Среда, 30.06.2010, 07:37 | Сообщение # 11
Мастер джэдай
Группа: Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус:
Quote (C@H4E3)
Скобки фигурные проверь всели на месте, и именно тамли
Quote (C@H4E3)
наконец избавься от return 1 в обработке каждого диалога, достаточно одного return 1 в конце процедуры обработки этих диалогов.
Quote (C@H4E3)
убери лишние обработки в коде,
вот тут вы можете наблюдать ответы от недалекого скриптера, который иногда пишет глупости пытаясь показаться умным =\
Quote (|PZ|KYZ|AIR|)
у меня очень много диалоговых акон и некоторые из них не известно какие выполняют помимо своих заданий есчё и чужие где в этих кодах допущена ошибка
пересекаются ИД диалогов.
И return необходимы, а те кто говорит чтобы их убирали просто сами не умеют ими пользоваться, кончно и ставить их нужно только там где они нужны.



И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
brontozavrДата: Среда, 30.06.2010, 08:43 | Сообщение # 12
Уважаемый человек
Группа: Продвинутые
Сообщений: 880
Награды: 13
Репутация: 191
Замечания: 40%
Статус:
stepmex,
Quote
И return необходимы, а те кто говорит чтобы их убирали просто сами не умеют ими пользоваться, кончно и ставить их нужно только там где они нужны.

:) Вот именно что они у него, я так понял, стоят в каждом подряд, а не только там где надо, ему достаточно поставить одно в конце :). Конечно весь его код я не вижу может они ему еще где пригодятся, но на данный момент судя по примеру, который он написал они там лишни.

C@H4E3,
От тебя то не ожидал такого ответа, не тупи, ты че там в гавно что ли new_russian синий ?


Сообщение отредактировал brontozavr - Среда, 30.06.2010, 08:45
stepmexДата: Среда, 30.06.2010, 11:07 | Сообщение # 13
Мастер джэдай
Группа: Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус:
Quote (brontozavr)
Вот именно что они у него, я так понял, стоят в каждом подряд
из всех опубликованных вариантов ретурны везде на месте



И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
brontozavrДата: Среда, 30.06.2010, 13:34 | Сообщение # 14
Уважаемый человек
Группа: Продвинутые
Сообщений: 880
Награды: 13
Репутация: 191
Замечания: 40%
Статус:
stepmex,
ну вообще то если у него условие по проверке ид диалога выполняется, то return можно поставить просто в конце OnDialogResponse. Ведь если ид диалога например будет 2 , то обработки диалога 1 и 0 все равно не сработают :) . Если у него конечно помимо проверки ид диалогов там нету еще каких-то действий.
Например вот
Code
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
   if(dialogid==0)
   {
    if(response)
    {
     //действие
    }
    else //действие
    return 1;   
   }
   //действие
   return 0;
}

первое return нужно ставить если после условия идут еще какие-то операции.
А если все выглядит вот так в конце каждой обработки
Code
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
   if(dialogid==0)
   {
    if(response)
    {
     //действие
    }
    else   
    {
     //действие
    }   
   }
   return 1;
}

то я думаю достаточно обойтись только одним ретурн в конце.



Сообщение отредактировал brontozavr - Среда, 30.06.2010, 13:35
Alex009Дата: Среда, 30.06.2010, 13:40 | Сообщение # 15
Уважаемый человек
Группа: Продвинутые
Сообщений: 917
Награды: 10
Репутация: 661
Замечания: 0%
Статус:
brontozavr, внимание вопрос: зачем тратить время на обработку следующих условий если цель уже достигнута? :D выполнили действие по первому диалогу и всё, не будем нагружаться дальнейшими проверками - обрываем функцию


Controllable NPC developer
soProject developer
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:





 


 


 
Хостинг от uCoz samp.at.ua