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

2 страниц V  1 2 >  
Ответить в эту темуОткрыть новую тему
> Pvp Combat System [0.56b], Система возможно совместима с 0.55R 4.0.2.
Breaker
сообщение 22.4.2007, 5:19
Сообщение #1


******

Expert
Сообщений: 529
Регистрация: 25.12.2004
Группа: Пользователи
Наличность: 0
Из: Москва
Пользователь №: 2.792
Возраст: 27



Дополнительные удары при бое:
Backstab 33% - Шанс нанести удар со спины (+75% от урона)
Critical 1/50 - Шанс нанести критический удар (+135% от урона)

Бонусные переменные могут быть использованны на любов виде предмета который можно одеть на себя. Типы Бонусов:
Evasion % - Шанс увернуться от удара
ResistPhysical % - Сопративляемость к физическому урону
DamageIncreas % - увеличение урона
DamageSpeed % - увеличение скорости ударов
QuickCast % - Увеличение скорости магии
ManaRequirement % - Уменьшение потери маны при касте магии.
ResistMagic % - Сопративляемость к любому магическому урону
ResistFire % - Сопративляемость к огненному урону
ResistEnergy % - Сопративляемость к энергетическому урону
ResistPoison % - Сопративляемость к отравляющему урону
?ResistCold % - Сопративляемость к замаражевающему урону
? - Данное свойство откюченно в связи с тем что перепись действия этого эффекта должна производиться в тригере ON=@SpellEffect где указывается время действия данного спелла т.е при 0 сопротивляемости - 10 сек, при 100% сопративляемости - 0 сек.

PS: Возможно для кого то система ещё сырая.. но система работает на ура. Собственно в скрипте всё рассписанно что да где... так что легко подлежит изменениям... Спасибо...

Код

[FUNCTION GetCombatEffect]
LOCAL.Result="0"
FOR 1 24
IF (<LOCAL._FOR>!=9) && (<LOCAL._FOR>!=11) && (<LOCAL._FOR>!=15) && (<LOCAL._FOR>!=16) && (<LOCAL._FOR>!=21)
   LOCAL.Result = "<EVAL (<LOCAL.Result> + <FINDLAYER.<EVAL <LOCAL._FOR>>.TAG0.<ARGS>>)>"
ENDIF
ENDFOR
RETURN <LOCAL.Result>

[FUNCTION DamageEquipedArmor]
OBJ=<UID>
FORCONT <UID>
  IF StrMatch("t_armor*","<TYPE>") || StrMatch("t_shield*","<TYPE>") || StrMatch("t_clothing","<TYPE>")
     IF (<OBJ.FINDLAYER.<LAYER>.UID>==<UID>) && !(<ATTR>&attr_magic) && (RAND(100) < 50)
        DAMAGE 100.0
        RETURN 1
     ENDIF
  ENDIF
ENDFOR
RETURN 0


[FUNCTION DamageEquipedWeapon]
OBJ=<UID>
FORCONT <UID>
  IF StrMatch("t_weapon_*","<TYPE>")
     IF (<OBJ.FINDLAYER.<LAYER>.UID>==<UID>) && !(<ATTR>&attr_magic) && (RAND(100) < 25)
        DAMAGE 100.0
        RETURN 1
     ENDIF
  ENDIF
ENDFOR
RETURN 0

[EVENTS e_PvP]
//<------------------------------------------------------------------------------------->
//<------------------------------------------------------------------------------------->
//<- Magic Combat ---------------------------------------------------------------------->
//<------------------------------------------------------------------------------------->
//<------------------------------------------------------------------------------------->

//<------------------------------------------------------------------------------------->
//< TRIGGER: SpellCast                                                                  >
//<------------------------------------------------------------------------------------->
ON=@SpellCast
IF (<SRC.IsGM>) //(<SRC.ACCOUNT.PLEVEL> > 1)
   ARGN3=0.1
ELSE
//<[MOD] ------------- Вычисление модификации скорости магии со скроллов --------------->
   IF StrMatch("t_scroll","<ARGO.TYPE>")
      ARGN3 = <ARGN3> - <FVAL (<ARGN>*45)/100>
      SRC.TAG.IsScroll="1"
   ENDIF
//<[MOD] ---------------- Увеличение скорости магии бонусом QuickCast ------------------>
   ARGN3 -= <EVAL (<ARGN3>*<SRC.GetCombatEffect QuickCast>)/100>
ENDIF
SRC.SYSMESSAGE @73, Cast speed: <FVAL <ARGN3>> sec.


//<------------------------------------------------------------------------------------->
//< TRIGGER: SpellEffect                                                                >
//<------------------------------------------------------------------------------------->
ON=@SpellEffect
IF (<FLAGS>&statf_invul)
   EFFECT 3,037b9,10,20
   RETURN 1
//<[FIX] --------- Не применять формулы на спеллы которых нет в Spellbook-е ------------>
ELIF (<ARGN> >= 65)
   SERV.LOG @WARNING: <NAME> [<ACCOUNT>] using not aviable spell <ARGN>
//<[FIX] --------------------------- Применение Cure спелла ---------------------------->
ELIF (<ARGN>==11)
   TRY FINDID.i_memory_poison.REMOVE
   EFFECT 3,i_fx_heal_effect,15,25
   RETURN 1
//<[FIX] -------------------------- Применение Dispel спелла --------------------------->
ELIF (<ARGN>==41) || (<ARGN>==54)
   TRY FINDID.i_memory_poison.REMOVE
   TRY FINDID.i_memory_incognito.REMOVE
   TRY FINDID.i_memory_spell_stats.REMOVE
//<[MOD] ------------ Система отражения магии от спелла (Magic Reflection) ------------->
ELIF (<FINDID.i_rune_magic_reflection.UID>) && (<SERV.SPELL.<ARGN>.FLAGS>&spellflag_harm)

   EFFECT=3,i_fx_bless_EFFECT,15,15
   FINDID.i_rune_magic_reflection.REMOVE
   FLAGS=<FLAGS>&~statf_reflection

   IF (<UID>!=<SRC.UID>)
      SRC.SPELLEFFECT <ARGN>, <MAGERY>

      IF (0)
      ELIF (<ARGN>==5)    // s_magic_arrow
         SRC.EFFECT 0,036e4,4,16,6
      ELIF (<ARGN>==18)   // s_fireball
         SRC.EFFECT 0,036d4,4,16,6
      ELIF (<ARGN>==30)   // s_lightning
         EFFECT 1,i_fx_curse,4,16,6
      ELIF (<ARGN>==49)   // s_chain_lightning
         EFFECT 1,i_fx_curse,4,16,6
      ELIF (<ARGN>==51)   // s_flamestrike
         SRC.EFFECT 3,03709,4,16,6
      ENDIF

   ENDIF
   RETURN 1
ELSE
//<[MOD] ----------------- Восстановление/сохранение значений спелла ------------------->
   IF (<VAR0.Spell_<ARGN>_Effect>)
      SERV.SPELL.<ARGN>.EFFECT = "<VAR0.Spell_<ARGN>_Effect>"
   ELSE
      VAR0.Spell_<ARGN>_Effect = "<SERV.SPELL.<ARGN>.EFFECT>"
   ENDIF

   IF (<VAR0.Spell_<ARGN>_Duration>)
      SERV.SPELL.<ARGN>.DURATION = "<VAR0.Spell_<ARGN>_Duration>"
   ELSE
      VAR0.Spell_<ARGN>_Duration = "<SERV.SPELL.<ARGN>.DURATION>"
   ENDIF

   IF (<VAR0.Spell_<ARGN>_ManaUse>)
      SERV.SPELL.<ARGN>.MANAUSE = "<VAR0.Spell_<ARGN>_ManaUse>"
   ELSE
      VAR0.Spell_<ARGN>_ManaUse = "<SERV.SPELL.<ARGN>.MANAUSE>"
   ENDIF

//<[MOD] ------------ Уменьшение затрат маны бонусом ManaRequirement ------------------->
   SERV.SPELL.<ARGN>.MANAUSE -= <EVAL (<SERV.SPELL.<ARGN>.MANAUSE>*<SRC.GetCombatEffect ManaRequirement>)/100>

//<[MOD] -------------------- Вычисление модификации сил магии ------------------------->
   LOCAL.SpellDiff = "<QVAL (<SRC.INT> < 100) ?-<EVAL (100-<SRC.INT>)>:<EVAL (<SRC.INT>-100)> >"

//<[MOD] -------------------- Увеличение/уменьшение сил магии -------------------------->
   IF (<SERV.SPELL.<ARGN>.MANAUSE>) // Если есть значение затрат маны
      SERV.SPELL.<ARGN>.MANAUSE -= <EVAL (<SERV.SPELL.<ARGN>.MANAUSE>*<SRC.GetCombatEffect ManaRequirement>)/100>
      IF (<SERV.SPELL.<ARGN>.MANAUSE> < 0)
         SERV.SPELL.<ARGN>.MANAUSE = 0
      ENDIF
   ENDIF

   IF (<SERV.SPELL.<ARGN>.DURATION>) // Если у спелла есть значение продолжительности
      SERV.SPELL.<ARGN>.DURATION += <EVAL (<SERV.SPELL.<ARGN>.DURATION>*<LOCAL.SpellDiff>)/100>
      IF (<SERV.SPELL.<ARGN>.DURATION> < 1)
         SERV.SPELL.<ARGN>.DURATION = 0
      ENDIF
   ENDIF

   IF (<SERV.SPELL.<ARGN>.EFFECT>) // Если у спелла есть значение урона
      SERV.SPELL.<ARGN>.EFFECT += <EVAL (<SERV.SPELL.<ARGN>.EFFECT>*<LOCAL.SpellDiff>)/100>
      IF (<SERV.SPELL.<ARGN>.FLAGS>&spellflag_harm) // Если спелл является harm
         SERV.SPELL.<ARGN>.EFFECT += <EVAL (<SERV.SPELL.<ARGN>.EFFECT>*<EVAL <EvaluatingIntel>/15>)/100>
      ENDIF
      IF (<SERV.SPELL.<ARGN>.EFFECT> < 1)
         SERV.SPELL.<ARGN>.EFFECT = 0
      ENDIF
   ENDIF

//<[FIX] ------------------------- Применение спеллов на статы ------------------------->
   IF (<ARGN>==1)||(<ARGN>==3)||(<ARGN>==8)||(<ARGN>==9)||(<ARGN>==10)||(<ARGN>==16)||(<ARGN>==17)||(<ARGN>==27)

      // 1 - Clumsy      - STR= 0  DEX=-10 INT= 0
      // 3 - Feeblemind  - STR= 0  DEX= 0  INT=-10
      // 8 - Weaken      - STR=-10 DEX= 0  INT= 0
      // -----------------------------------------
      // 9 - Agility     - STR= 0  DEX=+10 INT= 0
      //10 - Cunning     - STR= 0  DEX= 0  INT=+10
      //16 - Strength    - STR=+10 DEX= 0  INT= 0
      // -----------------------------------------
      //17 - Bless       - STR=+5  DEX=+5  INT=+5
      //27 - Curse       - STR=-5  DEX=-5  INT=-5
      SOUND <SERV.SPELL.<ARGN>.SOUND>
      EFFECT 3,<SERV.SPELL.<ARGN>.EFFECT_ID>,15,15

      SERV.NEWITEM=i_memory_spell_stats
      NEW.DispID=<SERV.SPELL.<ARGN>.RUNE_ITEM>
      NEW.NAME=<SERV.SPELL.<ARGN>.NAME>
      NEW.LINK=<SRC.UID>
  
      IF (0)
      //<--------------------------------- Increased spells ---------------------------------->
      ELIF (<ARGN>== 1) // Clumsy      - STR= 0  DEX=-10 INT= 0
         NEW.MOREM=0       // Mode: 0=- 1=+
         NEW.MOREY=<SERV.SPELL.<ARGN>.EFFECT>  // DEX
      ELIF (<ARGN>== 3)
         NEW.MOREM=0       // Mode: 0=- 1=+
         NEW.MOREZ=<SERV.SPELL.<ARGN>.EFFECT>  // INT
      ELIF (<ARGN>== 8)
         NEW.MOREM=0       // Mode: 0=- 1=+
         NEW.MOREX=<SERV.SPELL.<ARGN>.EFFECT>  // STR
   //<--------------------------------- Decreased spells ---------------------------------->
      ELIF (<ARGN>== 9)
         NEW.MOREM=1       // Mode: 0=- 1=+
         NEW.MOREY=<SERV.SPELL.<ARGN>.EFFECT>  // DEX
      ELIF (<ARGN>==10)
         NEW.MOREM=1       // Mode: 0=- 1=+
         NEW.MOREZ=<SERV.SPELL.<ARGN>.EFFECT>  // INT
      ELIF (<ARGN>==16)
         NEW.MOREM=1       // Mode: 0=- 1=+
         NEW.MOREX=<SERV.SPELL.<ARGN>.EFFECT>  // STR
   //<------------------------------- Increased mass spell -------------------------------->
      ELIF (<ARGN>==17)
         NEW.MOREM=1       // Mode: 0=- 1=+
         NEW.MOREX=<SERV.SPELL.<ARGN>.EFFECT>  // STR
         NEW.MOREY=<SERV.SPELL.<ARGN>.EFFECT>  // DEX
         NEW.MOREZ=<SERV.SPELL.<ARGN>.EFFECT>  // INT
   //<------------------------------- Decreased mass spell -------------------------------->
      ELIF (<ARGN>==27)
         NEW.MOREM=0       // Mode: 0=- 1=+
         NEW.MOREX=<SERV.SPELL.<ARGN>.EFFECT>  // STR
         NEW.MOREY=<SERV.SPELL.<ARGN>.EFFECT>  // DEX
         NEW.MOREZ=<SERV.SPELL.<ARGN>.EFFECT>  // INT
      ENDIF  
      EQUIP=<NEW.UID>
      NEW.TIMER=<SERV.SPELL.<ARGN>.DURATION>
      RETURN 1
   ENDIF

//<[MOD] ------------------------------------------------------------------------------->
   SRC.SYSMESSAGE @73, Spell Diff: <EVAL <LOCAL.SpellDiff>>%
   SRC.SYSMESSAGE @73, Cast Effect: <SERV.SPELL.<ARGN>.EFFECT>
   SRC.SYSMESSAGE @73, Cast Duraction: <SERV.SPELL.<ARGN>.DURATION>
   SRC.SYSMESSAGE @73, Cast Mana Use: <SERV.SPELL.<ARGN>.MANAUSE>
ENDIF

//<------------------------------------------------------------------------------------->
//<------------------------------------------------------------------------------------->
//<- Melee Combat ---------------------------------------------------------------------->
//<------------------------------------------------------------------------------------->
//<------------------------------------------------------------------------------------->

//<------------------------------------------------------------------------------------->
//< TRIGGER: HitTry
//<------------------------------------------------------------------------------------->
ON=@HitTry
//<----------------------------- Если аттакуемый Game Master --------------------------->
IF (<SRC.IsGM>)
   SYSMESSAGE You can`t attack a Game Master.
//<------------------------ Если на каком нить игроке есть invul ----------------------->
ELIF (<FLAGS>&statf_invul) || (<SRC.FLAGS>&statf_invul)
   SYSMESSAGE You can't attack <SRC.NAME> in your state.
//<---------------------------- Если аттакуемый в No PVP зоне -------------------------->
ELIF (<REGION.FLAGS>&region_flag_safe) || (<REGION.FLAGS>&region_flag_no_pvp)
   SYSMESSAGE You can't attack <SRC.NAME> here.
//<----------------------------- Если аттакуещий в Safe зоне --------------------------->
ELIF (<SRC.REGION.FLAGS>&region_flag_safe) || (<SRC.REGION.FLAGS>&region_flag_no_pvp)
   SYSMESSAGE You can't attack <SRC.NAME> here.
ELIF (<STAM> < 1)
   STAM=0
ELSE
   ARGN = 20 // Скорость рукопашного удара (По умолчанию)
   IF StrMatch("t_weapon_*","<ARGO.TYPE>")
      IF (<EVAL 0<DEF.<UID.<ARGO.UID>.DispID>_speed>>)     // Скорость оружий по его дополнительному типу
         ARGN = <FVAL <DEF.<UID.<ARGO.UID>.DispID>_speed>>
      ELIF (<EVAL 0<DEF.<UID.<ARGO.UID>.BaseID>_speed>>)   // Скорость оружий по его главному типу
         ARGN = <FVAL <DEF.<UID.<ARGO.UID>.BaseID>_speed>>
      ELSE  // Если предмет не прописан в базе оружий то сообщяем игроку
         SYSMESSAGEUA 32 0 0 0` If you have seen this message, speed of your
         SYSMESSAGEUA 32 0 0 0` weapon is not registered, call Game Master!
         SERV.LOG [<NAME>] use weapon <ARGO.NAME>[<ARGO.UID>], is not registered.
         RETURN 1
      ENDIF
   ENDIF

//<[MOD] ---------- Каждые 10 ловкости увеличиывают/уменьшают скорость на 0.1 ---------->
   ARGN = <ARGN> + <EVAL (100-<DEX>)/10>
//<[MOD] --------------- Применение эффекта боя на скорость с предметов ---------------->
   ARGN = <ARGN> - <FVAL (<ARGN>*<GetCombatEffect DamageSpeed>)/100>
//<[MOD] ----------------- Потеря стамины в зависимости от типа оружия ----------------->
   STAM = <STAM> - <ARGO.LAYER>

   IF (<FVAL <ARGN>> < 0.1)
      ARGN=0.1
   ENDIF

   SYSMESSAGE @0c2, Weapon speed: <FVAL <ARGN>>
   RETURN 0
ENDIF
RETURN 1


//<------------------------------------------------------------------------------------->
//< TRIGGER: HitMiss
//<------------------------------------------------------------------------------------->
ON=@HitMiss
SRC.SYSMESSAGE <NAME> miss you.
SYSMESSAGE You miss <SRC.NAME>


//<------------------------------------------------------------------------------------->
//< TRIGGER: Hit  
//<------------------------------------------------------------------------------------->
ON=@Hit
//<[MOD]------------------- Получение базового урона персонажа ------------------------->
IF StrMatch("t_weapon_*","<ARGO.TYPE>") || StrMatch("t_wand","<ARGO.TYPE>")
   ARGN = RAND({<ARGO.DAM>})
ELSE
   ARGN = <EVAL ((<STR>*10)/100) + RAND(2)>
ENDIF

//<[MOD] ------------------ Увеличение урона от силы персонажа ------------------------->
//ARGN += <EVAL (<STR>-100)/5>
ARGN += <EVAL (<STR>/10)> // Default of Client Formula

//<[MOD] --------------- Увеличение урона от бонуса увеличения урона ------------------->
ARGN += <EVAL (<ARGN>*<GetCombatEffect DamageIncrease>)/100>

//<[MOD] ------------------- Потеря урона луков от дистанции --------------------------->
IF StrMatch("t_weapon_bow","<ARGO.TYPE>") || StrMatch("t_weapon_xbow","<ARGO.TYPE>")
   IF (<ARGO.ID>==013b1) // Если это bow (лук)
      ARGN = <ARGN> - <EVAL (<DISTANCE>*135)/100>
   ELIF (<ARGO.ID>==0f4f) // Если это crossbow (арбалет)
      ARGN = <ARGN> - <EVAL (<DISTANCE>*120)/100>
   ELIF (<ARGO.ID>==013fc) // Если это heavy crossbow (тяжолый арбалет)
      ARGN = <ARGN> - <EVAL (<DISTANCE>*105)/100>
   ENDIF
ELSE
//<[MOD] -------- Дополнительный удар со спины (backstab) от оружия ближнего боя ------->
   IF (<ARGN> > 0) && (<SRC.DIR>==<DIR>) && (RAND(3)==0)
      TAG.Backstab=<EVAL (<ARGN>*75)/100>
   ENDIF
//<[MOD] --------------- Критический удар оружием от оружия ближнего боя --------------->
   IF (<ARGN> > 0) && (RAND(50)==0)
      TAG.Critical=<EVAL (<ARGN>*135)/100>
   ENDIF
ENDIF

//<[FIX] ----------------- Поломка одетых предметов оружия при ударе ------------------->
IF (<ARGN> > 0)
   DamageEquipedWeapon
ENDIF


//<------------------------------------------------------------------------------------->
//<------------------------------------------------------------------------------------->
//< TRIGGER: GetHit                                                                     >
//<------------------------------------------------------------------------------------->
ON=@GetHit
//<[MOD] ------------------- Получаемый урон является магическим ----------------------->
IF (<ARGN2>&dam_magic)
//<[MOD] ----------------- Применение потери силы магии от резиста --------------------->
   ARGN -= <EVAL (<ARGN>*<EVAL <MagicResistance>/25>) / 100>
//<[MOD] ----------- Применение потери силы магии от бонуса ResistMagic ---------------->
   ARGN -= <EVAL (<ARGN>*<GetCombatEffect ResistMagic>)/100>


//<[MOD] ------- Применение потери силы огненной магии от бонуса ResistFire ------------>
   IF (<ARGN2>&dam_fire)
      ARGN -= <EVAL (<ARGN>*<GetCombatEffect ResistFire>)/100>
   ENDIF
//<[MOD] ---- Применение потери силы энергетической магии от бонуса ResistEnergy ------->
   IF (<ARGN2>&dam_lightning)
      ARGN -= <EVAL (<ARGN>*<GetCombatEffect ResistEnergy>)/100>
   ENDIF
//<[MOD] ----- Применение потери силы отравляющей магии от бонуса ResistPoison --------->
   IF (<ARGN2>&dam_poison)
      ARGN -= <EVAL (<ARGN>*<GetCombatEffect ResistPoison>)/100>
   ENDIF

//<[MOD] ------------------- Получаемый урон является физическим ----------------------->
ELSE
//<[MOD] -------- Дополнительный удар со спины (backstab) от оружия ближнего боя ------->
   IF (<SRC.TAG0.Backstab>)
      SRC.SAY @33, Backstab!
      ARGN += <EVAL <SRC.TAG.Backstab>>
      SRC.TAG.Backstab =
   ENDIF
//<[MOD] --------------- Критический удар оружием от оружия ближнего боя --------------->
   IF (<SRC.TAG0.Critical>)
      SRC.SAY @33, Critical!
      ARGN += <EVAL <SRC.TAG.Critical>>
      SRC.TAG.Critical =
   ENDIF

//<[MOD] -------------------- Сопративляемость к физическому урону --------------------->
   ARGN -= <EVAL (<ARGN>*<GetCombatEffect ResistPhysical>)/100>

//<[MOD] -------------------- Уменьшение урона от количества брони --------------------->
   ARGN -= <EVAL (<AC>*45)/100>

//<[MOD] -------------------- Уменьшение урона бонусом сопративления ------------------->
//   ARGN -= <EVAL (<ARGN>*<GetCombatEffect Defense>)/100>

//<[FIX] ------------- Поломка одетых предметов брони при получении урона -------------->
   IF (<ARGN> > 0)
      DamageEquipedArmor
   ENDIF
ENDIF

IF (<ARGN> > 0)
//<[MOD] --------------- Прерывание каста с книшки, при получении удара ---------------->
   IF (<SRC.UID>!=<UID>) && !(<TAG0.IsScroll>) && (<ACTION>==Skill_Magery)
      ACTION=-1
   ENDIF

//<[FIX] ---------------- Выводим игрока из парализа, если он в нём -------------------->
   TRY FINDID.i_rune_paralyze.REMOVE
   TRY FINDID.i_rune_paralyze_field.REMOVE
ENDIF

//<[MOD] ---------------- ворот от удара бонусом "увернуться от удара" ----------------->
IF (RAND(100) < <EVAL <GetCombatEffect Evasion>>)
   SYSMESSAGE @73, You have evaded from attack.
   SRC.SYSMESSAGE @33, <NAME> has evaded your attack.
   ARGN=0
   RETURN 1
ENDIF

//<[MOD] ---------------------- Выполнение результатов урона --------------------------->
IF (<ARGN> > 0)
//<[MOD] ------------------- Вывод информации о получении урона ------------------------>
   IF (<UID>==<SRC.UID>)
      SRC.SYSMESSAGE @<QVAL (<ARGN2>&dam_magic)?0c2:04a>, You damaged on <ARGN> hits.
   ELIF (<ARGN2>&dam_magic)
      SRC.SYSMESSAGE @0c2, You damage <NAME> on <ARGN> hits.
      SYSMESSAGE @026, <SRC.NAME> damage you on <ARGN> hits.
   ELSE
      SRC.SYSMESSAGE @04a, You damage <NAME> on <ARGN> hits.
      SYSMESSAGE @026, <SRC.NAME> damage you on <ARGN> hits.
   ENDIF
ELSE
   SYSMESSAGE You parry is blow.
   SRC.SYSMESSAGE <NAME> is parry blow.
   RETURN 1
ENDIF
//<[MOD] ---------- Установка GOD типа урона, так как сделали все вычисления ----------->
ARGN2=01 // Чтоб урон прошёл на столько, чему равно ARGN

//<------------------------------------------------------------------------------------->
//<[MOD] ------------------------ Мемори на изменение статов --------------------------->
//<------------------------------------------------------------------------------------->
[ITEMDEF i_memory_spell_stats]
DEFNAME=i_memory_spell_stats
NAME=memory spell stats
ID=02093
LAYER=32
TYPE=t_eq_script

ON=@Create
ATTR=attr_decay|attr_newbie|attr_invis

ON=@Equip
IF (<MOREM>)
   CONT.MODSTR += <MOREX>
   CONT.MODDEX += <MOREY>
   CONT.MODINT += <MOREZ>
ELSE
   CONT.MODSTR -= <MOREX>
   CONT.MODDEX -= <MOREY>
   CONT.MODINT -= <MOREZ>
ENDIF

ON=@Unequip
IF (<MOREM>)
   CONT.MODSTR -= <MOREX>
   CONT.MODDEX -= <MOREY>
   CONT.MODINT -= <MOREZ>
ELSE
   CONT.MODSTR += <MOREX>
   CONT.MODDEX += <MOREY>
   CONT.MODINT += <MOREZ>
ENDIF

ON=@Timer
REMOVE
RETURN 1

[EOF]


SphereDefsX.scp
Код

[DEFNAME WEAPONS_SPEED]
i_club_speed             20
i_hatchet_speed          20
i_pickaxe_speed          20
i_cleaver_meat_speed     20
i_knife_skinning_speed   20
i_knife_butcher_speed    20
i_dagger_speed           20
i_hammer_smith_speed     20
i_hammer_sledge_speed    23
i_crook_sheperds_speed   23
i_staff_black_speed      32
i_staff_quarter_speed    35
i_staff_gnarled_speed    38
t_wand_speed             20

// Swordsmanship (swords)
i_cutlass_speed          20
i_katana_speed           23
i_scimitar_speed         26
i_sword_broad_speed      29
i_sword_long_speed       32
i_sword_viking_speed     35
i_halberd_speed          38
i_bardiche_speed         41
i_blade_long_speed       44

// Swordsmanship(axes)
i_axe_war_speed          23
i_axe_speed              26
i_axe_exec_speed         29
i_axe_double_speed       32
i_axe_two_hand_speed     35
i_axe_battle_large_speed 38

// Fencing
i_kryss_speed            23
i_war_fork_speed         26
i_spear_short_speed      32
i_pitchfork_speed        35
i_spear_speed            38

// MaceFighting
i_maul_speed             23
i_mace_speed             26
i_mace_war_speed         32
i_hammer_pick_speed      35
i_hammer_war_speed       38

i_bow_speed              26
i_crossbow_speed         32
i_crossbow_heavy_speed   35


--------------------
Все мои скрипты и сервера: ftp://sphere@magery.ru
FTP работает не всегда, только когда мой комп включен. По вечерам часто!
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
asvama
сообщение 24.4.2007, 17:57
Сообщение #2


*

Registred
Сообщений: 7
Регистрация: 18.9.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 7.919



Привет.Я установил твои скрипт и поставил его как ивент.Но у меня проблема вот ошибки в сфере што я зделал не так или ето надо отдельнь настраивать и писпть?

17:54:ERROR:(PVP.scp,373)Undefined symbol ''
17:54:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:54:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:54:ERROR:(PVP.scp,303)Undefined symbol ''
17:54:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:54:ERROR:(PVP.scp,373)Undefined symbol ''
17:54:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:54:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:54:ERROR:(PVP.scp,265)Undefined symbol ''
17:54:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:54:ERROR:(PVP.scp,265)Undefined symbol ''
17:54:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:54:ERROR:(PVP.scp,303)Undefined symbol ''
17:54:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:54:ERROR:(PVP.scp,373)Undefined symbol ''
17:54:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:54:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:54:ERROR:(PVP.scp,265)Undefined symbol ''
17:54:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:54:ERROR:(PVP.scp,265)Undefined symbol ''
17:54:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:54:ERROR:(PVP.scp,303)Undefined symbol ''
17:54:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:54:ERROR:(PVP.scp,373)Undefined symbol ''
17:54:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:54:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:54:ERROR:(PVP.scp,303)Undefined symbol ''
17:54:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:54:ERROR:(PVP.scp,373)Undefined symbol ''
17:54:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:54:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:54:ERROR:(PVP.scp,265)Undefined symbol ''
17:54:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:54:ERROR:(PVP.scp,265)Undefined symbol ''
17:54:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:54:ERROR:(PVP.scp,303)Undefined symbol ''
17:54:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:54:ERROR:(PVP.scp,373)Undefined symbol ''
17:54:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:54:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:54:ERROR:(PVP.scp,303)Undefined symbol ''
17:54:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:54:ERROR:(PVP.scp,373)Undefined symbol ''
17:54:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:54:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:54:ERROR:(PVP.scp,265)Undefined symbol ''
17:54:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:54:ERROR:(PVP.scp,265)Undefined symbol ''
17:54:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:54:ERROR:(PVP.scp,303)Undefined symbol ''
17:54:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:54:ERROR:(PVP.scp,373)Undefined symbol ''
17:54:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:54:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:54:ERROR:(PVP.scp,303)Undefined symbol ''
17:54:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:54:ERROR:(PVP.scp,373)Undefined symbol ''
17:54:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:54:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:54:ERROR:(PVP.scp,265)Undefined symbol ''
17:54:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:54:ERROR:(PVP.scp,265)Undefined symbol ''
17:54:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:54:ERROR:(PVP.scp,303)Undefined symbol ''
17:54:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:54:ERROR:(PVP.scp,373)Undefined symbol ''
17:54:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:54:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:54:ERROR:(PVP.scp,303)Undefined symbol ''
17:54:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:54:ERROR:(PVP.scp,373)Undefined symbol ''
17:54:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:54:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:54:ERROR:(PVP.scp,265)Undefined symbol ''
17:54:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:54:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,55)Can't resolve <SRC.GetCombatEffect QuickCast>
17:55:ERROR:(PVP.scp,55)Undefined symbol ''
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,303)Can't resolve <GetCombatEffect DamageIncrease>
17:55:ERROR:(PVP.scp,303)Undefined symbol ''
17:55:ERROR:(PVP.scp,373)Can't resolve <GetCombatEffect ResistPhysical>
17:55:ERROR:(PVP.scp,373)Undefined symbol ''
17:55:ERROR:(PVP.scp,399)Can't resolve <GetCombatEffect Evasion>
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
17:55:ERROR:(PVP.scp,265)Can't resolve <GetCombatEffect DamageSpeed>
17:55:ERROR:(PVP.scp,265)Undefined symbol ''
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Breaker
сообщение 25.4.2007, 12:55
Сообщение #3


******

Expert
Сообщений: 529
Регистрация: 25.12.2004
Группа: Пользователи
Наличность: 0
Из: Москва
Пользователь №: 2.792
Возраст: 27



Да просто Вы забыли добавить в сферу функцию GetCombatEffect
которая тоже есть в скрипте... я хз как так можно умудриться её забыть..
Вы не пробовали думать головой прежде чем тупо юзать чужое


--------------------
Все мои скрипты и сервера: ftp://sphere@magery.ru
FTP работает не всегда, только когда мой комп включен. По вечерам часто!
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
asvama
сообщение 25.4.2007, 15:27
Сообщение #4


*

Registred
Сообщений: 7
Регистрация: 18.9.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 7.919



Спасиб за помощь.Не знал што надо в sphere.scp добавлять ети функции.Просто я ток начал заниматся сферой и не все понимаю поэтому задал такой "тупой" вопрос извеняюсь.Я его скопировал посотреть как он работает и посотреть что к чему.Извеняюсь еще раз.А тебе респект класная система боя вышла!Если чтото в будущем будет не понятно буду обращятся к тебе ок?Да за одно вот еще вопрос как зделать чтоб допустим клоака в паке не двигалась(не льзя ее не куда выбросить отдать) но при дабл клике она одевалась на персонажа и при дабл клике снималась(тоже тупой вроде вопрос но плз помоги (IMG:style_emoticons/default/unsure.gif) )?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Breaker
сообщение 26.4.2007, 4:03
Сообщение #5


******

Expert
Сообщений: 529
Регистрация: 25.12.2004
Группа: Пользователи
Наличность: 0
Из: Москва
Пользователь №: 2.792
Возраст: 27



На предмет
ON=@PickUp_Pack
RETURN 1


--------------------
Все мои скрипты и сервера: ftp://sphere@magery.ru
FTP работает не всегда, только когда мой комп включен. По вечерам часто!
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
NFx
сообщение 28.4.2007, 19:52
Сообщение #6


********

SpS 60+(умер), NE Priest 40+ жифф
Сообщений: 1.505
Регистрация: 3.9.2003
Группа: Пользователи
Наличность: 0
Из: Подмосковье
Пользователь №: 950



брякер, а ты чо это, решил отдать свои запасы народу?))


--------------------
Важна не реклама, а качество.
Качество - девиз хороших серверов.
Продуманность и готовность - девиз очень хороших серверов.
..::Lorien Role-Playing Shard(RunUO)::..
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DihlofozzZ
сообщение 29.4.2007, 10:54
Сообщение #7


***********

Администратор форума
Сообщений: 5.602
Регистрация: 8.3.2003
Группа: Администраторы
Наличность: 0
Из: Москва Россия
Пользователь №: 237



наверно движуху получше написал (IMG:style_emoticons/default/smile.gif)


--------------------
С уважением Администратор Форума.
Контактный Email: dihlofozzz@uokit.com


Topic Closed
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
asvama
сообщение 29.4.2007, 19:04
Сообщение #8


*

Registred
Сообщений: 7
Регистрация: 18.9.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 7.919



[FUNCTION GetCombatEffect]
LOCAL.Result="0"
FOR 1 24
IF (<LOCAL._FOR>!=9) && (<LOCAL._FOR>!=11) && (<LOCAL._FOR>!=15) && (<LOCAL._FOR>!=16) && (<LOCAL._FOR>!=21)
LOCAL.Result = "<EVAL (<LOCAL.Result> + <FINDLAYER.<EVAL <LOCAL._FOR>>.TAG0.<ARGS>>)>"
ENDIF
ENDFOR
RETURN <LOCAL.Result>

Можешь обьяснить что делает ета функция?А то она по моему не работает у меня? (IMG:style_emoticons/default/dry.gif)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Wuu
сообщение 30.4.2007, 11:52
Сообщение #9


****

Apprentice
Сообщений: 279
Регистрация: 2.3.2005
Группа: Пользователи
Наличность: 0
Из: Dobele
Пользователь №: 3.196



Ishit po layeram =)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Breaker
сообщение 30.4.2007, 13:37
Сообщение #10


******

Expert
Сообщений: 529
Регистрация: 25.12.2004
Группа: Пользователи
Наличность: 0
Из: Москва
Пользователь №: 2.792
Возраст: 27



Цитата(asvama @ 29.4.2007, 20:04) *

Можешь обьяснить что делает ета функция?А то она по моему не работает у меня? (IMG:style_emoticons/default/dry.gif)

Она ищет указанный тег на одетых предметах на всех лаеров которые используются под одежду... сумируя выводит результат...
это было необходимо для того чтоб реализовать бонусы которые вешаются на предметы. ну всякие там Swing Speed, Cold, Fire, Poison, Energy-резисты.
если не работает значит у тя нету функций сферы: LOCAL переменных и FOR цикла.
PS: на 55i работать не будет.


--------------------
Все мои скрипты и сервера: ftp://sphere@magery.ru
FTP работает не всегда, только когда мой комп включен. По вечерам часто!
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
asvama
сообщение 1.5.2007, 17:05
Сообщение #11


*

Registred
Сообщений: 7
Регистрация: 18.9.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 7.919



Так по немногу начинаю понимать.Значит штобы итем давал какойто из етих дополнительных бонусов надо итему прописать типа:Cold=10 и он будет давать резист.Я прост на итем прописывал Resistcold и оно выдавало типа нет такой команды.Можешь дать ссылку где ети команды все а то в мануале нету такого. (IMG:style_emoticons/default/rolleyes.gif)
ЗЫ Я на 56b.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
KonstantiN
сообщение 1.5.2007, 20:12
Сообщение #12


******

Группа: Пользователи
Наличность: 0
Пользователь №: 6.583



Код

Бонусные переменные могут быть использованны на любов виде предмета который можно одеть на себя. Типы Бонусов:
Evasion % - Шанс увернуться от удара
ResistPhysical % - Сопративляемость к физическому урону
DamageIncreas % - увеличение урона
DamageSpeed % - увеличение скорости ударов
QuickCast % - Увеличение скорости магии
ManaRequirement % - Уменьшение потери маны при касте магии.
ResistMagic % - Сопративляемость к любому магическому урону
ResistFire % - Сопративляемость к огненному урону
ResistEnergy % - Сопративляемость к энергетическому урону
ResistPoison % - Сопративляемость к отравляющему урону
?ResistCold % - Сопративляемость к замаражевающему урону
? - Данное свойство откюченно в связи с тем что перепись действия этого эффекта должна производиться в тригере ON=@SpellEffect где указывается время действия данного спелла т.е при 0 сопротивляемости - 10 сек, при 100% сопративляемости - 0 сек.


Как их повешать на предмет напиши плиз и как обращатся к этим переменым на чаре


--------------------
По тихоньку возрождаю The Odyssey.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
-=BASO=-
сообщение 1.5.2007, 20:58
Сообщение #13


*****

Journeyman
Сообщений: 460
Регистрация: 2.4.2005
Группа: Пользователи
Наличность: 0
Пользователь №: 3.387



Код
[ITEMDEF i_Axe]
...
TAG.ResistFire=10
....

[ITEMDEF i_Axe2]
...
TAG.ResistCold=50
....


--------------------
Если худо организму, применяй товарищ клизму.
Убедись товарищ лично - клизма действует отлично !!!
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
evil3
сообщение 2.5.2007, 9:34
Сообщение #14


****

Группа: Пользователи
Наличность: 0
Из: РФ,Томск
Пользователь №: 4.918



Цитата(KonstantiN @ 2.5.2007, 0:12) *

Код

Бонусные переменные могут быть использованны на любов виде предмета который можно одеть на себя. Типы Бонусов:
Evasion % - Шанс увернуться от удара
ResistPhysical % - Сопративляемость к физическому урону
DamageIncreas % - увеличение урона
DamageSpeed % - увеличение скорости ударов
QuickCast % - Увеличение скорости магии
ManaRequirement % - Уменьшение потери маны при касте магии.
ResistMagic % - Сопративляемость к любому магическому урону
ResistFire % - Сопративляемость к огненному урону
ResistEnergy % - Сопративляемость к энергетическому урону
ResistPoison % - Сопративляемость к отравляющему урону
?ResistCold % - Сопративляемость к замаражевающему урону
? - Данное свойство откюченно в связи с тем что перепись действия этого эффекта должна производиться в тригере ON=@SpellEffect где указывается время действия данного спелла т.е при 0 сопротивляемости - 10 сек, при 100% сопративляемости - 0 сек.


Как их повешать на предмет напиши плиз и как обращатся к этим переменым на чаре


Так будет правильней:
Код
on=@equip
src.tag.Evasion=0<src.tag.Evasion>+10
src.tag.ResistPhysical=0<src.tag.ResistPhysical>+10
src.tag.DamageIncreas=0<src.tag.DamageIncreas>+10
src.tag.DamageSpeed=0<src.tag.DamageSpeed>+10
src.tag.QuickCast=0<src.tag.QuickCast>+10
src.tag.ManaRequirement=0<src.tag.ManaRequirement>+10
src.tag.ResistMagic=0<src.tag.ResistMagic>+10
src.tag.ResistFire=0<src.tag.ResistFire>+10
src.tag.ResistEnergy=0<src.tag.ResistEnergy>+10
src.tag.ResistPoison=0<src.tag.ResistPoison>+10
src.tag.ResistCold=0<src.tag.ResistCold>+10

on=@unequip
src.tag.Evasion=0<src.tag.Evasion>+-10
src.tag.ResistPhysical=0<src.tag.ResistPhysical>+-10
src.tag.DamageIncreas=0<src.tag.DamageIncreas>+-10
src.tag.DamageSpeed=0<src.tag.DamageSpeed>+-10
src.tag.QuickCast=0<src.tag.QuickCast>+-10
src.tag.ManaRequirement=0<src.tag.ManaRequirement>+-10
src.tag.ResistMagic=0<src.tag.ResistMagic>+-10
src.tag.ResistFire=0<src.tag.ResistFire>+-10
src.tag.ResistEnergy=0<src.tag.ResistEnergy>+-10
src.tag.ResistPoison=0<src.tag.ResistPoison>+-10
src.tag.ResistCold=0<src.tag.ResistCold>+-10


--------------------
Ничего не получается...
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
asvama
сообщение 2.5.2007, 11:05
Сообщение #15


*

Registred
Сообщений: 7
Регистрация: 18.9.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 7.919



Где и что мне надо изменить чтобы самому распределить заклинания по разным стихиям?Ну создать блоки с заклинаниями которые относились к одн (IMG:style_emoticons/default/huh.gif) ой из стихий.Плз помогите.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
-=BASO=-
сообщение 2.5.2007, 11:29
Сообщение #16


*****

Journeyman
Сообщений: 460
Регистрация: 2.4.2005
Группа: Пользователи
Наличность: 0
Пользователь №: 3.387



Цитата(evil3 @ 2.5.2007, 10:34) *

Так будет правильней:
Код
on=@equip
src.tag.Evasion=0<src.tag.Evasion>+10
src.tag.ResistPhysical=0<src.tag.ResistPhysical>+10
src.tag.DamageIncreas=0<src.tag.DamageIncreas>+10
src.tag.DamageSpeed=0<src.tag.DamageSpeed>+10
src.tag.QuickCast=0<src.tag.QuickCast>+10
src.tag.ManaRequirement=0<src.tag.ManaRequirement>+10
src.tag.ResistMagic=0<src.tag.ResistMagic>+10
src.tag.ResistFire=0<src.tag.ResistFire>+10
src.tag.ResistEnergy=0<src.tag.ResistEnergy>+10
src.tag.ResistPoison=0<src.tag.ResistPoison>+10
src.tag.ResistCold=0<src.tag.ResistCold>+10

on=@unequip
src.tag.Evasion=0<src.tag.Evasion>+-10
src.tag.ResistPhysical=0<src.tag.ResistPhysical>+-10
src.tag.DamageIncreas=0<src.tag.DamageIncreas>+-10
src.tag.DamageSpeed=0<src.tag.DamageSpeed>+-10
src.tag.QuickCast=0<src.tag.QuickCast>+-10
src.tag.ManaRequirement=0<src.tag.ManaRequirement>+-10
src.tag.ResistMagic=0<src.tag.ResistMagic>+-10
src.tag.ResistFire=0<src.tag.ResistFire>+-10
src.tag.ResistEnergy=0<src.tag.ResistEnergy>+-10
src.tag.ResistPoison=0<src.tag.ResistPoison>+-10
src.tag.ResistCold=0<src.tag.ResistCold>+-10


Ты вобще понял что за х**ту ты написал!? Не влизай, когда не знаешь что правильней! И то, что ты написал скорее для 55i чем для 55r402!
Цитата
Где и что мне надо изменить чтобы самому распределить заклинания по разным стихиям?Ну создать блоки с заклинаниями которые относились к одн ой из стихий.Плз помогите.
Спелы сами по себе уже должны к какой-нить из стихий относится, а если ты хочешь их переписать то тебе в секцию со спеллами и там что-то типа
Код
ON=@Effect
damage x,y,<src.uid> //где х-урон, y-флаг урона
....
return 1


--------------------
Если худо организму, применяй товарищ клизму.
Убедись товарищ лично - клизма действует отлично !!!
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
LawbreaK
сообщение 2.5.2007, 14:55
Сообщение #17


********

Группа: Пользователи
Наличность: 0
Из: Северная Столица
Пользователь №: 5.617
Возраст: 22



Брэйкер и Басо будьте по спокойнее. Если уж решили помогать, то не стоит хамить и грубить.

ЗЫ: По теме.
К клиентам > 40х автоматом резисты привязываются (опция для просмотра резистов)? Если нет, то существует ли такая возможность?


--------------------
Сайт гильдии (в разработке): http://t2d.in/ .
Глава клана Time 2 Die a ViolenT DeatH
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
-=BASO=-
сообщение 2.5.2007, 16:07
Сообщение #18


*****

Journeyman
Сообщений: 460
Регистрация: 2.4.2005
Группа: Пользователи
Наличность: 0
Пользователь №: 3.387



Я не сталкивался с этими клиентами(пока не было такой необходимости), но я не думаю что они должны автоматом привязываться(это мое мнение, если не прав то поправьте)! Чтоб увидеть сколько чар имеет резиста к той или иной стихии можно попробовать сделать так
Код
[function showresist]
sysmessage @054 ResistMagic <GetCombatEffect ResistMagic>%
sysmessage @054 ResistFire <GetCombatEffect ResistFire>%
sysmessage @054 ResistEnergy <GetCombatEffect ResistEnergy>%
sysmessage @054 ResistPoison <GetCombatEffect ResistPoison>%
sysmessage @054 ResistCold <GetCombatEffect ResistCold>%


p.s. Насчет грубить, я обычно такое делаю, когда нубы задивают лично меня, если бы это ко мне не относилось я бы и не стал хамить (IMG:style_emoticons/default/wink.gif)


--------------------
Если худо организму, применяй товарищ клизму.
Убедись товарищ лично - клизма действует отлично !!!
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Breaker
сообщение 4.5.2007, 0:36
Сообщение #19


******

Expert
Сообщений: 529
Регистрация: 25.12.2004
Группа: Пользователи
Наличность: 0
Из: Москва
Пользователь №: 2.792
Возраст: 27



Цитата(LawbreaK @ 2.5.2007, 15:55) *

Брэйкер и Басо будьте по спокойнее. Если уж решили помогать, то не стоит хамить и грубить.

ЗЫ: По теме.
К клиентам > 40х автоматом резисты привязываются (опция для просмотра резистов)? Если нет, то существует ли такая возможность?

Ну для клиентов > 4.0x это где то так:
Код

ON=@ItemClientToolTip
IF (<ARGO.TAG0.Luck>)
   ADDCLILOC 1060436,+<dARGO.TAG0.Luck>
ENDIF
IF (<ARGO.TAG0.IncreaseGold>)
   ADDCLILOC 1060414,<dARGO.TAG0.IncreaseGold>
ENDIF
IF (<ARGO.TAG0.SelfRepair>)
   ADDCLILOC 1060450,<dARGO.TAG0.SelfRepair>%
ENDIF
IF (<ARGO.TAG0.ResistPhysical>)
   ADDCLILOC 1060448,<dARGO.TAG0.ResistPhysical>
ENDIF
IF (<ARGO.TAG0.DefenseChance>)
   ADDCLILOC 1060408,<dARGO.TAG0.DefenseChance>
ENDIF
IF (<ARGO.TAG0.DamageIncrease>)
   ADDCLILOC 1060402,<dARGO.TAG0.DamageIncrease>
ENDIF
IF (<ARGO.TAG0.DamageSpeed>)
   ADDCLILOC 1060486,<dARGO.TAG0.DamageSpeed>
ENDIF
IF (<ARGO.TAG0.QuickCast>)
   ADDCLILOC 1060413,<dARGO.TAG0.QuickCast>
ENDIF
IF (<ARGO.TAG0.LowerManaCost>)
   ADDCLILOC 1060433,<dARGO.TAG0.LowerManaCost>
ENDIF
IF (<ARGO.TAG0.ResistCold>)
   ADDCLILOC 1060445,<dARGO.TAG0.ResistCold>
ENDIF
IF (<ARGO.TAG0.ResistEnergy>)
   ADDCLILOC 1060446,<dARGO.TAG0.ResistEnergy>
ENDIF
IF (<ARGO.TAG0.ResistFire>)
   ADDCLILOC 1060447,<dARGO.TAG0.ResistFire>
ENDIF
IF (<ARGO.TAG0.ResistPoison>)
   ADDCLILOC 1060449,<dARGO.TAG0.ResistPoison>
ENDIF

IF (<ARGO.TAG0.IncreaseStr>)
   ADDCLILOC 1060659,Strength,+<dARGO.TAG0.IncreaseStr>
ENDIF
IF (<ARGO.TAG0.IncreaseDex>)
   ADDCLILOC 1060660,Dexterity,+<dARGO.TAG0.IncreaseDex>
ENDIF
IF (<ARGO.TAG0.IncreaseInt>)
   ADDCLILOC 1060661,Intelligence,+<dARGO.TAG0.IncreaseInt>
ENDIF

IF (<ARGO.TAG0.RegenHits>)
   ADDCLILOC 1060444,+<dARGO.TAG0.RegenHits>
ENDIF
IF (<ARGO.TAG0.RegenStam>)
   ADDCLILOC 1060443,+<dARGO.TAG0.RegenStam>
ENDIF
IF (<ARGO.TAG0.RegenMana>)
   ADDCLILOC 1060440,+<dARGO.TAG0.RegenMana>
ENDIF

ON=@ItemEquip
IF (<ACT.TAG0.Luck>)
   SRC.LUCK += <ACT.TAG0.Luck>
ENDIF
IF (<ACT.TAG0.ResistPhysical>)
   SRC.MODAC += <EVAL (<ACT.GetRealArmor>*<ACT.TAG0.ResistPhysical>)/100>
ENDIF
IF (<ACT.TAG0.ResistCold>)
   SRC.RESCOLD += <ACT.TAG0.ResistCold>
ENDIF
IF (<ACT.TAG0.ResistEnergy>)
   SRC.RESENERGY += <ACT.TAG0.ResistEnergy>
ENDIF
IF (<ACT.TAG0.ResistFire>)
   SRC.RESFIRE += <ACT.TAG0.ResistFire>
ENDIF
IF (<ACT.TAG0.ResistPoison>)
   SRC.RESPOISON += <ACT.TAG0.ResistFire>
ENDIF

IF (<ACT.TAG0.IncreaseStr>)
   SRC.MODSTR += <ACT.TAG0.IncreaseStr>
ENDIF
IF (<ACT.TAG0.IncreaseDex>)
   SRC.MODDEX += <ACT.TAG0.IncreaseDex>
ENDIF
IF (<ACT.TAG0.IncreaseInt>)
   SRC.MODINT += <ACT.TAG0.IncreaseInt>
ENDIF

ON=@ItemUnequip
IF (<ACT.TAG0.Luck>)
   SRC.LUCK -= <ACT.TAG0.Luck>
ENDIF
IF (<ACT.TAG0.ResistPhysical>)
   SRC.MODAC -= <EVAL (<ACT.GetRealArmor>*<ACT.TAG0.ResistPhysical>)/100>
ENDIF
IF (<ACT.TAG0.ResistCold>)
   SRC.RESCOLD -= <ACT.TAG0.ResistCold>
ENDIF
IF (<ACT.TAG0.ResistEnergy>)
   SRC.RESENERGY -= <ACT.TAG0.ResistEnergy>
ENDIF
IF (<ACT.TAG0.ResistFire>)
   SRC.RESFIRE -= <ACT.TAG0.ResistFire>
ENDIF
IF (<ACT.TAG0.ResistPoison>)
   SRC.RESPOISON -= <ACT.TAG0.ResistFire>
ENDIF

IF (<ACT.TAG0.IncreaseStr>)
   SRC.MODSTR -= <ACT.TAG0.IncreaseStr>
ENDIF
IF (<ACT.TAG0.IncreaseDex>)
   SRC.MODDEX -= <ACT.TAG0.IncreaseDex>
ENDIF
IF (<ACT.TAG0.IncreaseInt>)
   SRC.MODINT -= <ACT.TAG0.IncreaseInt>
ENDIF

Токо придёться кое что от суда удалить, т.к. я писал эту систему давно... щас другая (затачиваю под 6.0.0 клиент ), которую я подстраиваю под офф сайт, как тут: http://uo.stratics.com/content/arms-armor/itemproperties.php
т.е бонусные системы и резисты беруться с офф сайта УО =) мяу. правда будет не всё... ка бы не убить ПВП сферовское...


--------------------
Все мои скрипты и сервера: ftp://sphere@magery.ru
FTP работает не всегда, только когда мой комп включен. По вечерам часто!
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
LawbreaK
сообщение 4.5.2007, 0:49
Сообщение #20


********

Группа: Пользователи
Наличность: 0
Из: Северная Столица
Пользователь №: 5.617
Возраст: 22



Просто для меня было не поняткой, как вытащить из клиента то, откуда он берет инфо про суммарный резист.


--------------------
Сайт гильдии (в разработке): http://t2d.in/ .
Глава клана Time 2 Die a ViolenT DeatH
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

2 страниц V  1 2 >
Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 29.3.2024, 17:56
Designed by Nickostyle