Город Мастеров
IPB

Здравствуйте, гость ( Вход | Регистрация )

 Правила этого форума ПРАВИЛА РАЗДЕЛА
147 страниц V  « < 108 109 110 111 112 > »   
Ответить в эту темуОткрыть новую тему
> Скрипты, Все вопросы и ответы по скриптам
Lex
сообщение May 23 2007, 09:41
Сообщение #2726


Level 5
Иконки Групп

Класс: Обыватель
Характер: Lawful Neutral
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Цитата(Slam @ May 22 2007, 19:51) [snapback]108503[/snapback]
2. Написал идущий ниже скрипт. Пытаюсь загнать его в функцию, но не получается.

как ты пытаешься это сделать? никаких проблем не вижу
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение May 23 2007, 15:36
Сообщение #2727


Миловидный Бегрюссунг
Иконки Групп

Класс: Воин
Характер: Chaotic Good
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Приведи инклюду сюда.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Легионер
сообщение Jun 6 2007, 10:01
Сообщение #2728


Level 3
*

Класс: Воин
Характер: Lawful Neutral
Раса: Человек



Не составляется скрипт


Neverwinter Script Source
#include "lib"

void main()
{
object oPC = GetEnteringObject();
object oRoba = GetObjectByTag("itm_roba");
  {
  clearPCInventory();
  clearPCSlot(INVENTORY_SLOT_ARMS);
  clearPCSlot(INVENTORY_SLOT_ARROWS);
  clearPCSlot(INVENTORY_SLOT_BELT);
  clearPCSlot(INVENTORY_SLOT_BOLTS);
  clearPCSlot(INVENTORY_SLOT_BOOTS);
  clearPCSlot(INVENTORY_SLOT_BULLETS);
  clearPCSlot(INVENTORY_SLOT_CHEST);
  clearPCSlot(INVENTORY_SLOT_CLOAK);
  clearPCSlot(INVENTORY_SLOT_HEAD);
  clearPCSlot(INVENTORY_SLOT_LEFTHAND);
  clearPCSlot(INVENTORY_SLOT_LEFTRING);
  clearPCSlot(INVENTORY_SLOT_NECK);
  clearPCSlot(INVENTORY_SLOT_RIGHTHAND);
  clearPCSlot(INVENTORY_SLOT_RIGHTRING);
  ActionGiveItem(oRoba, oPC);
  AssignCommand(oPC, ActionWait(1.0));
  AssignCommand(oPC, ActionStartConversation(oPC, "start_dialog"));
  }
}



Пишут: Ошибка: Неопределенный идентификатор ()

Не подскажете, что здесь не так?

Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Jun 6 2007, 14:58
Сообщение #2729


Level 5
Иконки Групп

Класс: Обыватель
Характер: Lawful Neutral
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



желательно еще номер строчки, которая с ошибкой.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Легионер
сообщение Jun 7 2007, 11:00
Сообщение #2730


Level 3
*

Класс: Воин
Характер: Lawful Neutral
Раса: Человек



Не указан. Наверное в инклюде ошибка.
Вот он
Neverwinter Script Source
/*

*/


//int W_DEBUG = TRUE;
int W_DEBUG = FALSE;

object getPC();
void print(string str);

int W_EV_BEAT = 1001;
int W_EV_CONV = 1004;

int W_EV_CEND = 201;
int W_EV_SPWN = 202;

// -----------------------------------------------

void clearPCInventory() {
  object obj= getPC();
  object item= GetFirstItemInInventory(obj);
  while(item!=OBJECT_INVALID) {
    DestroyObject(item);
    item= GetNextItemInInventory(obj);
  }
}

void clearPCSlot(int slot) {
  object obj= getPC();
  object item= GetItemInSlot(slot, obj);
  if(item!=OBJECT_INVALID)
    DestroyObject(item);
}
int hasItemEquipped(string tag, object obj) {
  object item= GetItemPossessedBy(obj, tag);
  return item!=OBJECT_INVALID && (
    GetItemInSlot(INVENTORY_SLOT_ARMS    , obj) == item ||
    GetItemInSlot(INVENTORY_SLOT_ARROWS  , obj) == item ||
    GetItemInSlot(INVENTORY_SLOT_BELT    , obj) == item ||
    GetItemInSlot(INVENTORY_SLOT_BOLTS    , obj) == item ||
    GetItemInSlot(INVENTORY_SLOT_BOOTS    , obj) == item ||
    GetItemInSlot(INVENTORY_SLOT_BULLETS  , obj) == item ||
    GetItemInSlot(INVENTORY_SLOT_CHEST    , obj) == item ||
    GetItemInSlot(INVENTORY_SLOT_CLOAK    , obj) == item ||
    GetItemInSlot(INVENTORY_SLOT_HEAD    , obj) == item ||
    GetItemInSlot(INVENTORY_SLOT_LEFTHAND , obj) == item ||
    GetItemInSlot(INVENTORY_SLOT_LEFTRING , obj) == item ||
    GetItemInSlot(INVENTORY_SLOT_NECK    , obj) == item ||
    GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, obj) == item ||
    GetItemInSlot(INVENTORY_SLOT_RIGHTRING, obj) == item
  );
}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Jadent
сообщение Jun 7 2007, 13:20
Сообщение #2731


Level 4
Иконки Групп

Класс: Обыватель
Характер: True Neutral
Раса: Человек
NWN2: Маппинг



Ругается оно на "getPC()" в функциях. Может, там имелось в виду "GetFirstPC()"? Тогда бы все работало.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Neo
сообщение Jun 7 2007, 13:35
Сообщение #2732



Иконки Групп

Класс: Пьяный Мастер
Характер: Lawful Good
Раса: Тварь
MySQL, PHP, JavaScript
Порядок Времени



Цитата(Легионер @ Jun 7 2007, 12:00) [snapback]109039[/snapback]
object getPC();
void print(string str);

а может там имелись ввиду две функции? которые объявлены в начале, но их текста я так и не увидел. вот на это он и ругается
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Легионер
сообщение Jun 7 2007, 15:12
Сообщение #2733


Level 3
*

Класс: Воин
Характер: Lawful Neutral
Раса: Человек



Цитата
Ругается оно на "getPC()" в функциях. Может, там имелось в виду "GetFirstPC()"? Тогда бы все работало.


Ты был прав... спасибо
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Epsilon
сообщение Jun 9 2007, 19:18
Сообщение #2734


Level 4
**

Класс: Ученик Дракона
Характер: Lawful Good
Раса: Человек



Думал, думал и решил, что вопросы о таком скрипте в вопросы новичков не впихнуть.
Возможно ли написать скрипт, который заставит понимать русскоязычные сообщения чата персонажа?

Прошу администраторов удалить это сообщение: обдумывая структуру скрипта я осознал, что он мне не по силам
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Jun 10 2007, 00:33
Сообщение #2735


Level 5
Иконки Групп

Класс: Обыватель
Характер: Lawful Neutral
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Цитата(Epsilon @ Jun 9 2007, 20:18) [snapback]109184[/snapback]
Возможно ли написать скрипт, который заставит понимать русскоязычные сообщения чата персонажа?

возможно. Причем от скрипта, который бы понимал англ. речь он не отличался бы ничем, кроме набора распознаваемых шаблонов.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Esidor
сообщение Jun 18 2007, 10:08
Сообщение #2736


Level 1


Класс: Маг
Характер: Neutral Good
Раса: Чудовище



Где можно узнать функции команд и принципы составления скриптов?
Может вопрос и не в тему.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Dik Morris
сообщение Jun 18 2007, 12:59
Сообщение #2737


Вечно меняющийся
Иконки Групп

Класс: Монах
Характер: True Neutral
Раса: Человек
NWN: Скриптинг [Sn]



Все функции, имеют описание в самом тулсете. Так же есть Лексикон. Перевод, тоже имеется (смотри сайт).

Принципы построения, разжеваны в мануалах, это опять сайт/Лексикон.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Mandrake
сообщение Jun 26 2007, 19:23
Сообщение #2738


Level 3
*

Класс: Волшебник
Характер: Neutral Evil
Раса: Человек



Neverwinter Script Source
void RemoveXPFromParty(int nXP, object oPC, int bAllParty=TRUE)
{

if (!bAllParty)
  {
  nXP=(GetXP(oPC)-nXP)>=0 ? GetXP(oPC)-nXP : 0;
  SetXP(oPC, nXP);
  }
else
  {
  object oMember=GetFirstFactionMember(oPC, TRUE);

  while (GetIsObjectValid(oMember))
      {
      nXP=(GetXP(oMember)-nXP)>=0 ? GetXP(oMember)-nXP : 0;
      SetXP(oMember, nXP);
      oMember=GetNextFactionMember(oPC, TRUE);
      }
  }
}
void ApplyPenalty(object oDead)
{
    int nXP = GetXP(oDead);
    int nPenalty = 250 * GetHitDice(oDead);
    int nHD = GetHitDice(oDead);
    // * You can not lose a level with this respawning
    int nMin = ((nHD * (nHD - 1)) / 2) * 1000;

    int nNewXP = nXP - nPenalty;
    if (nNewXP < nMin)
      nNewXP = nMin;
    SetXP(oDead, nNewXP);
    int nGoldToTake = FloatToInt(0.20 * GetGold(oDead));
    // * a cap of 10 000gp taken from you
    if (nGoldToTake > 50000)
    {
        nGoldToTake = 50000;
    }
    AssignCommand(oDead, TakeGoldFromCreature(nGoldToTake, oDead, TRUE));
    DelayCommand(4.0, FloatingTextStrRefOnCreature(58299, oDead, FALSE));
    DelayCommand(4.8, FloatingTextStrRefOnCreature(58300, oDead, FALSE));

}
#include "nw_i0_plot"
/*  Script generated by
Lilac Soul's NWN Script Generator, v. 2.0

For download info, please visit:
http://nwvault.ign.com/View.php?view=Other...4683&id=625    */


//Goes OnPlayerRespawn of the module properties
void main()
{

object oPC = GetLastRespawnButtonPresser();
object oDead = oPC;
string sArea = GetTag(GetArea(oPC));
if (!GetIsPC(oPC)) return;

ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectResurrection(),oPC);

ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectHeal(GetMaxHitPoints(oPC)), oPC);

RemoveEffects(oPC);

object oTarget;
oTarget = oPC;

//Visual effects can't be applied to waypoints, so if it is a WP
//apply to the WP's location instead

int nInt;
nInt = GetObjectType(oTarget);

if((sArea == "AREA1") ||
  ( sArea == "AREA2") == FALSE )
{

  //Для Всех
  location lHALFELFTarget;
  oTarget = GetWaypointByTag("TN_SPAWN");
  lHALFELFTarget = GetLocation(oTarget);
  if (nInt != OBJECT_TYPE_WAYPOINT) ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_TIME_STOP), oTarget);
  else ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_TIME_STOP), GetLocation(oTarget));

  if (GetAreaFromLocation(lHALFELFTarget)==OBJECT_INVALID) return;

  AssignCommand(oPC, ClearAllActions());

  AssignCommand(oPC, ActionJumpToLocation(lHALFELFTarget));



ApplyPenalty(oDead);


}

}



Задача скрипта: Ставиться в онреспавн, и должен кидать игрока после смерти в опр. точку. Тут все нормально, проблема в исключениях, когда игрок должен респавниться на месте. Есть 2 локации AREA1 & AREA2, когда игрок в этих локациях, после смерти при нажатии респавна он появляется на том же месте где и умер, без потери опыта\золота, с этим и проблема, в AREA2 все нормально, а первой не правильно работает, когда прописываю только одну локацию, то опять же все правильно работает. Может я использовал не тот символ " || " ? Помогите пожалуйста (IMG:style_emoticons/kolobok_light/rolleyes.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jun 26 2007, 21:48
Сообщение #2739


Миловидный Бегрюссунг
Иконки Групп

Класс: Воин
Характер: Chaotic Good
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Neverwinter Script Source
if(sArea != "AREA1" || sArea != "AREA2")

Попробуй так.

Ты в своем выражинии описал ситуацию так: Если стринг арены 1 равен AREA1 или стринг арены2 не равен AREA2. Поэтому и косяк.
Можно и так записать. Придет Лекс скажет как грамотней (IMG:style_emoticons/kolobok_light/smile.gif) Но я бы так написал.
Neverwinter Script Source
if(sArea == "AREA1" || sArea == "AREA2")
{
  return;
}
else
       {
         // ТУТ ТВОЙ СКРИПТ
        }
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Mandrake
сообщение Jun 26 2007, 22:11
Сообщение #2740


Level 3
*

Класс: Волшебник
Характер: Neutral Evil
Раса: Человек



Aiwan, спасибо большое. Первый вариант не сработал, но второй работает как часы (IMG:style_emoticons/kolobok_light/rolleyes.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
virusman
сообщение Jun 27 2007, 00:42
Сообщение #2741


Level 17
Иконки Групп

Класс: Волшебник
Характер: Neutral Good
Раса: Человек
NWN: Скриптинг [PW]
Axistown SR 1.9
NWNX



QUOTE(Aiwan @ Jun 26 2007, 22:48) [snapback]109930[/snapback]
Neverwinter Script Source
if(sArea != "AREA1" || sArea != "AREA2")

Попробуй так.
Не ||, а &&.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jun 27 2007, 08:54
Сообщение #2742


Миловидный Бегрюссунг
Иконки Групп

Класс: Воин
Характер: Chaotic Good
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Цитата(virusman @ Jun 27 2007, 03:42) [snapback]109938[/snapback]
Не ||, а &&.

Тогда не будет работать никогда, ведь будет поиск двух лок одновременно, а это всегда будет FALSE.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Jun 27 2007, 09:48
Сообщение #2743


Level 5
Иконки Групп

Класс: Обыватель
Характер: Lawful Neutral
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Цитата(Aiwan @ Jun 27 2007, 09:54) [snapback]109953[/snapback]
Тогда не будет работать никогда, ведь будет поиск двух лок одновременно, а это всегда будет FALSE.

нет.
Neverwinter Script Source
if(sArea != "AREA1" && sArea != "AREA2")

будет выдавать TRUE для всех локаций, тэг который не АРЕНА1 И не АРЕНА2. (те будет делать как раз то, что нужно)

ps: легко заметить, что условия, данные тобой и Вирусманом эквивалентны. Достаточно применить базовые принципы дискретной математики (ну или логики)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
virusman
сообщение Jun 27 2007, 12:21
Сообщение #2744


Level 17
Иконки Групп

Класс: Волшебник
Характер: Neutral Good
Раса: Человек
NWN: Скриптинг [PW]
Axistown SR 1.9
NWNX



QUOTE(Lex @ Jun 27 2007, 10:48) [snapback]109956[/snapback]
ps: легко заметить, что условия, данные тобой и Вирусманом эквивалентны. Достаточно применить базовые принципы дискретной математики (ну или логики)
То, что у Айвана, всегда возвращает TRUE.
Я просто применил закон Де Моргана:
QUOTE
not (P and Q) = (not P) or (not Q)
not (P or Q) = (not P) and (not Q)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Aiwan
сообщение Jun 27 2007, 14:11
Сообщение #2745


Миловидный Бегрюссунг
Иконки Групп

Класс: Воин
Характер: Chaotic Good
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Да, я пропустил то что там два &&. Законы никакие не применял извините (IMG:style_emoticons/kolobok_light/pardon.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Jun 27 2007, 14:14
Сообщение #2746


Level 5
Иконки Групп

Класс: Обыватель
Характер: Lawful Neutral
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



Цитата(virusman @ Jun 27 2007, 13:21) [snapback]109957[/snapback]
Я просто применил закон Де Моргана:

ага, я именно про него и говорил (IMG:style_emoticons/kolobok_light/smile.gif)
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Leon PRO
сообщение Aug 19 2007, 16:56
Сообщение #2747


Ушедший на войну
Иконки Групп

Класс: Маг
Характер: Chaotic Good
Раса: Человек
NWN: Контент



Задача такая. НПС бежит к цели по "коридору", и в конце атакует ее (это его единственная цель для атаки, и он направлен на нее через скрипт).
По обоим сторонам коридора стоят "орудия" которые непрерывно атакуют НПС. Это могут быть плейсы или кричи. Что и как необходимо изменить, чтобы бегущий НПС ни при каких случаях не стал бы атаковать или отвлекаться на стреляющих, даже если конечная цель будет недоступна (например заблокирован проход).

Не знаю даже с чего начать.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
Lex
сообщение Aug 19 2007, 17:53
Сообщение #2748


Level 5
Иконки Групп

Класс: Обыватель
Характер: Lawful Neutral
Раса: Человек
NWN: Модмейкер
Проклятие Левора
Порядок Времени



хм.. как вариант - переписать этому НПС скрипт onAttack и onDamage, чтобы НПС не атаковал в ответ тех, кто бьет его, если это не игрок или кто-то из партии игрока.
другой вариант - эти по краям корридора атакуют через FakeSpell, а дамаг кладется скриптом отдельно - тут нужно прописать для этих НПС ХБ скрипт свой.
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
r1Stranger
сообщение Aug 26 2007, 12:18
Сообщение #2749


Level 4
**

Класс: Клерик
Характер: Lawful Neutral
Раса: Человек



а можно я ляпну? (IMG:style_emoticons/kolobok_light/ph34r.gif) (IMG:style_emoticons/kolobok_light/unsure.gif) (IMG:style_emoticons/kolobok_light/unsure.gif)
Цитата(Lex @ Aug 19 2007, 17:53) *
хм.. как вариант - переписать этому НПС скрипт onAttack и onDamage, чтобы НПС не атаковал в ответ тех, кто бьет его, если это не игрок или кто-то из партии игрока.

я бы наверно в этих скриптах делал проверку на текущее действие (бой) и если игрок в бою (GetIsInCombat (что то такое (IMG:style_emoticons/kolobok_light/unsure.gif) )) и последняя цель живая и/или действительная, чтоб он вообще ни на какие атаки и ущерб не реагировал (return) а добивал бы это до упора (если не надо делать проверку на собственные хп если не камикадзе), если нет списка приоритетов. Ну и в On perception поставил бы на дверь больший проиритет...

сори если че..

Сообщение отредактировал r1Stranger - Aug 26 2007, 12:20
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения
drago
сообщение Sep 8 2007, 21:03
Сообщение #2750


Level 1
Иконки Групп

Класс: Маг
Характер: Lawful Evil
Раса: Дракон
NWN: Скриптинг [PW]



делал спел, вроде все работает нормально, однако дамажит криво - то 3 раза, то 1.


Neverwinter Script Source
#include "X0_I0_SPELLS"
#include "x2_inc_spellhook"


void DoArmageddon()
{
vector vSelf = GetPosition(OBJECT_SELF);
vector v1 = Vector(vSelf.x+10.0f, vSelf.y+10.0f, 0.0f);
vector v2 = Vector(vSelf.x-10.0f, vSelf.y+10.0f, 0.0f);
vector v3 = Vector(vSelf.x+10.0f, vSelf.y-10.0f, 0.0f);
vector v4 = Vector(vSelf.x-10.0f, vSelf.y-10.0f, 0.0f);
//вокруг чара 4 точки создаются, куда эффекты налагаются
object oArea = GetArea(OBJECT_SELF);

location Loc1 = Location(oArea, v1, GetFacing(OBJECT_SELF));
location Loc2 = Location(oArea, v2, GetFacing(OBJECT_SELF));
location Loc3 = Location(oArea, v3, GetFacing(OBJECT_SELF));
location Loc4 = Location(oArea, v4, GetFacing(OBJECT_SELF));


ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_METEOR_SWARM), Loc1);
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_METEOR_SWARM), Loc2);
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_METEOR_SWARM), Loc3);
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_METEOR_SWARM), Loc4);

}

void main()
{
int nDam1, nDam2;
effect eDam, eDam2;
DoArmageddon();
object oTarget = GetFirstObjectInShape(SHAPE_SPHERE, 20.0f, GetLocation(OBJECT_SELF), OBJECT_TYPE_CREATURE || OBJECT_TYPE_PLACEABLE);
while (GetIsObjectValid(oTarget))
    {
    if (spellsIsTarget(oTarget, SPELL_TARGET_STANDARDHOSTILE, OBJECT_SELF) && oTarget != OBJECT_SELF)
        {
            nDam1 = d10(20);
            nDam2 = d10(5);
            eDam = EffectDamage(nDam1, DAMAGE_TYPE_FIRE);
            eDam2 = EffectDamage(nDam2, DAMAGE_TYPE_MAGICAL);
                ApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget);
                ApplyEffectToObject(DURATION_TYPE_INSTANT, eDam2, oTarget);
        }
        oTarget = GetNextObjectInShape(SHAPE_SPHERE, 20.0f, GetLocation(OBJECT_SELF), OBJECT_TYPE_CREATURE || OBJECT_TYPE_PLACEABLE);
    }


}
Вернуться в начало страницы
Скопировать ник в поле быстрого ответа
+Ответить с цитированием данного сообщения

147 страниц V  « < 108 109 110 111 112 > » 
Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 24th April 2024 - 23:00