mirror of
https://github.com/tbamud/tbamud.git
synced 2025-12-29 05:28:48 +01:00
307 lines
6.5 KiB
Text
307 lines
6.5 KiB
Text
#28800
|
|
Cleric Fight Function~
|
|
0 k 35
|
|
~
|
|
* Written by Fizban to imitate ROM Cleric Function
|
|
set current_hp %actor.hitp%
|
|
set rand %random.7%
|
|
* The dmg 5000 is actually non-damage, not damage.
|
|
switch %rand%
|
|
case 1
|
|
case 2
|
|
case 3
|
|
case 4
|
|
set dmg 5000
|
|
break
|
|
case 5
|
|
eval dmg (%random.2% * %random.8%) + (%self.level% / 2)
|
|
set spellname cause serious
|
|
break
|
|
case 6
|
|
eval dmg (%random.3% * %random.8%) + (%self.level% - 6)
|
|
set spellname cause critical
|
|
break
|
|
case 7
|
|
eval dmg %random.6% + %self.level%
|
|
set spellname flamestrike
|
|
break
|
|
done
|
|
eval new_current_hp %current_hp% - %dmg%
|
|
eval dmgpc (%dmg% * 100) / %current_hp%
|
|
if %dmgpc% == 0
|
|
set vp misses
|
|
elseif %dmgpc% <= 4
|
|
set vp scratches
|
|
elseif %dmgpc% <= 8
|
|
set vp grazes
|
|
elseif %dmgpc% <= 12
|
|
set vp hits
|
|
elseif %dmgpc% <= 16
|
|
set vp injures
|
|
elseif %dmgpc% <= 20
|
|
set vp wounds
|
|
elseif %dmgpc% <= 24
|
|
set vp mauls
|
|
elseif %dmgpc% <= 28
|
|
set vp decimates
|
|
elseif %dmgpc% <= 32
|
|
set vp devastates
|
|
elseif %dmgpc% <= 36
|
|
set vp maims
|
|
elseif %dmgpc% <= 40
|
|
set vp MUTILATES
|
|
elseif %dmgpc% <= 44
|
|
set vp DISEMBOWELS
|
|
elseif %dmgpc% <= 48
|
|
set vp EVISCERATES
|
|
elseif %dmgpc% <= 52
|
|
set vp MASSACRES
|
|
elseif %dmgpc% <= 100
|
|
set vp DEMOLISHES
|
|
else
|
|
set vp ANNIHILATES
|
|
end
|
|
if %dmg% > 4000
|
|
return 1
|
|
else
|
|
%send% %actor% %self.name%'s %spellname% %vp% you!
|
|
%echoaround% %actor% %self.name%'s %spellname% %vp% %actor.name%!
|
|
end
|
|
switch %rand%
|
|
case 1
|
|
dg_cast 'poison' %actor%
|
|
break
|
|
case 2
|
|
dg_cast 'curse' %actor%
|
|
break
|
|
case 3
|
|
dg_cast 'blind' %actor%
|
|
break
|
|
case 4
|
|
dg_cast 'earthquake'
|
|
break
|
|
case 5
|
|
case 6
|
|
case 7
|
|
%damage% %actor% %dmg%
|
|
break
|
|
done
|
|
~
|
|
#28801
|
|
Mage Fight Function~
|
|
0 k 35
|
|
~
|
|
* Written by Fizban to imitate ROM Cleric Function
|
|
* adjusted to imitate TBA Mage Functions
|
|
set current_hp %actor.hitp%
|
|
set rand %random.5%
|
|
switch %rand%
|
|
case 1
|
|
eval dmg (%random.1% * %random.8%) + 1
|
|
set spellname chill touch
|
|
break
|
|
case 2
|
|
eval dmg (%random.3% * %random.8%) + 3
|
|
set spellname burning hands
|
|
break
|
|
case 3
|
|
eval dmg (%random.7% * %random.8%) + 7
|
|
set spellname lightning bolt
|
|
case 4
|
|
eval dmg (%random.9% * %random.8%) + 9
|
|
set spellname color spray
|
|
case 5
|
|
eval dmg (%random.11% * %random.8%) + 11
|
|
set spellname fireball
|
|
break
|
|
done
|
|
eval new_current_hp %current_hp% - %dmg%
|
|
eval dmgpc (%dmg% * 100) / %current_hp%
|
|
if %dmgpc% == 0
|
|
set vp misses
|
|
elseif %dmgpc% <= 4
|
|
set vp scratches
|
|
elseif %dmgpc% <= 8
|
|
set vp grazes
|
|
elseif %dmgpc% <= 12
|
|
set vp hits
|
|
elseif %dmgpc% <= 16
|
|
set vp injures
|
|
elseif %dmgpc% <= 20
|
|
set vp wounds
|
|
elseif %dmgpc% <= 24
|
|
set vp mauls
|
|
elseif %dmgpc% <= 28
|
|
set vp decimates
|
|
elseif %dmgpc% <= 32
|
|
set vp devastates
|
|
elseif %dmgpc% <= 36
|
|
set vp maims
|
|
elseif %dmgpc% <= 40
|
|
set vp MUTILATES
|
|
elseif %dmgpc% <= 44
|
|
set vp DISEMBOWELS
|
|
elseif %dmgpc% <= 48
|
|
set vp EVISCERATES
|
|
elseif %dmgpc% <= 52
|
|
set vp MASSACRES
|
|
elseif %dmgpc% <= 100
|
|
set vp DEMOLISHES
|
|
else
|
|
set vp ANNIHILATES
|
|
end
|
|
if %dmg% > 4000
|
|
return 1
|
|
else
|
|
%send% %actor% %self.name%'s %spellname% %vp% you!
|
|
%echoaround% %actor% %self.name%'s %spellname% %vp% %actor.name%!
|
|
end
|
|
~
|
|
#28802
|
|
Stock Thief~
|
|
0 b 10
|
|
~
|
|
set actor %random.char%
|
|
if %actor%
|
|
if %actor.is_pc% && %actor.gold%
|
|
%send% %actor% You discover that %self.name% has %self.hisher% hands in your wallet.
|
|
%echoaround% %actor% %self.name% tries to steal gold from %actor.name%.
|
|
eval coins %actor.gold% * %random.10% / 100
|
|
nop %actor.gold(-%coins%)%
|
|
nop %self.gold(%coins%)%
|
|
end
|
|
end
|
|
~
|
|
#28803
|
|
Fire Breath Function~
|
|
0 k 100
|
|
~
|
|
set current_hp %actor.hitp%
|
|
eval low (%self.hitp% / 9)
|
|
eval high %self.hitp% / 5
|
|
eval range %high% - %low%
|
|
eval dmg %%random.%range%%% + %low%
|
|
eval dmgpc (%dmg% * 100) / %current_hp%
|
|
set spellname fire breath
|
|
if %dmgpc% == 0
|
|
set vp misses
|
|
elseif %dmgpc% <= 4
|
|
set vp scratches
|
|
elseif %dmgpc% <= 8
|
|
set vp grazes
|
|
elseif %dmgpc% <= 12
|
|
set vp hits
|
|
elseif %dmgpc% <= 16
|
|
set vp injures
|
|
elseif %dmgpc% <= 20
|
|
set vp wounds
|
|
elseif %dmgpc% <= 24
|
|
set vp mauls
|
|
elseif %dmgpc% <= 28
|
|
set vp decimates
|
|
elseif %dmgpc% <= 32
|
|
set vp devastates
|
|
elseif %dmgpc% <= 36
|
|
set vp maims
|
|
elseif %dmgpc% <= 40
|
|
set vp MUTILATES
|
|
elseif %dmgpc% <= 44
|
|
set vp DISEMBOWELS
|
|
elseif %dmgpc% <= 48
|
|
set vp EVISCERATES
|
|
elseif %dmgpc% <= 52
|
|
set vp MASSACRES
|
|
elseif %dmgpc% <= 100
|
|
set vp DEMOLISHES
|
|
else
|
|
set vp ANNIHILATES
|
|
end
|
|
%echoaround% %actor% %self.name% breathes forth a cone of fire.
|
|
%send% %actor% %self.name% breathes a cone of hot fire over you!
|
|
%send% %actor% %self.name%'s %spellname% %vp% you!
|
|
%echoaround% %actor% %self.name%'s %spellname% %vp% %actor.name%!
|
|
%damage% %actor% %dmg%
|
|
~
|
|
#28804
|
|
Acid Breath Function~
|
|
0 k 100
|
|
~
|
|
set current_hp %actor.hitp%
|
|
eval low (%self.hitp% / 11)
|
|
eval high %self.hitp% / 6
|
|
eval range %high% - %low%
|
|
eval dice_dam %self.level% * 16
|
|
eval hp_dam %%random.%range%%% + %low%
|
|
eval dmg (%hp_dam% + %dice_dam%) / 10
|
|
eval dmgpc (%dmg% * 100) / %current_hp%
|
|
set spellname acid breath
|
|
if %dmgpc% == 0
|
|
set vp misses
|
|
elseif %dmgpc% <= 4
|
|
set vp scratches
|
|
elseif %dmgpc% <= 8
|
|
set vp grazes
|
|
elseif %dmgpc% <= 12
|
|
set vp hits
|
|
elseif %dmgpc% <= 16
|
|
set vp injures
|
|
elseif %dmgpc% <= 20
|
|
set vp wounds
|
|
elseif %dmgpc% <= 24
|
|
set vp mauls
|
|
elseif %dmgpc% <= 28
|
|
set vp decimates
|
|
elseif %dmgpc% <= 32
|
|
set vp devastates
|
|
elseif %dmgpc% <= 36
|
|
set vp maims
|
|
elseif %dmgpc% <= 40
|
|
set vp MUTILATES
|
|
elseif %dmgpc% <= 44
|
|
set vp DISEMBOWELS
|
|
elseif %dmgpc% <= 48
|
|
set vp EVISCERATES
|
|
elseif %dmgpc% <= 52
|
|
set vp MASSACRES
|
|
elseif %dmgpc% <= 100
|
|
set vp DEMOLISHES
|
|
else
|
|
set vp ANNIHILATES
|
|
end
|
|
%echoaround% %actor% %self.name% spits acid at %actor.name%.
|
|
%send% %actor% %self.name% spits a stream of corrosive acid at you.
|
|
%send% %actor% %self.name%'s %spellname% %vp% you!
|
|
%echoaround% %actor% %self.name%'s %spellname% %vp% %actor.name%!
|
|
%damage% %actor% %dmg%
|
|
~
|
|
#28820
|
|
Supernova DeathTrap~
|
|
2 g 100
|
|
~
|
|
* Taken from a trigger By Rumble of The Builder Academy
|
|
* Near Death Trap stuns actor
|
|
wait 1 sec
|
|
%send% %actor% There must be a price to pay to witness this stunning sight!
|
|
wait 2 sec
|
|
set stunned %actor.hitp% - 2
|
|
%send% %actor% That really HURTS! And indeed...
|
|
%damage% %actor% %stunned%
|
|
%echo% @n
|
|
%force% %actor% look
|
|
~
|
|
#28830
|
|
Enter Crystal Ball~
|
|
1 c 100
|
|
l~
|
|
if %cmd.mudcommand% == look && %arg% /= crystal || %arg% /= ball
|
|
%send% %actor% You feel drawn towards the crystal ball. Your hand reaches out...
|
|
%echoaround% %actor% %actor.name% is drawn into the crystal ball!
|
|
%teleport% %actor% 28802
|
|
wait 2 sec
|
|
%at% 28802 %echoaround% %actor% %actor.name% appears out of nowhere!
|
|
%force% %actor% look
|
|
else
|
|
return 0
|
|
end
|
|
~
|
|
$~
|