|
@@ -13,27 +13,123 @@ opp_jab[0] = Ligth punch
|
|
|
opp_stren[0] = Strengh
|
|
|
opp_agil[0] = Agility
|
|
|
opp_vital[0] = Opponent health
|
|
|
-opp_react = Reactions
|
|
|
+opp_react[0] = Reactions
|
|
|
opp_shoot[0] = opponent marksmanship (only required if they are armed)
|
|
|
opp_magik[0] = only if they have magic
|
|
|
opp_mana[0] = only if they have magic
|
|
|
+opp_fog[0] = (tuman): Obscures vision, makes hitting harder.
|
|
|
+opp_clone[0] = (klon): Copies of the char that absorb 1 hit and disappear. A char may have some number of them.
|
|
|
+opp_shield[0] = (defence): Shielding that absorbs damage before hitpoints.
|
|
|
+opp_dambonus[0] = (magweapbonus): damage added to melee attacks
|
|
|
+opp_init[0] = (initBonus): attack faster/first
|
|
|
+opp_stun[0] = (stunner): make target unable to act for some amount of time
|
|
|
}
|
|
|
|
|
|
+if $ARGS[0] = 'initFight':
|
|
|
+ !! Clear Opponents from previous battle
|
|
|
+ killvar '$opp_name'
|
|
|
+ killvar '$opp_image'
|
|
|
+ killvar 'opp_def'
|
|
|
+ killvar 'opp_run'
|
|
|
+ killvar 'opp_wrstlng'
|
|
|
+ killvar 'opp_kick'
|
|
|
+ killvar 'opp_punch'
|
|
|
+ killvar 'opp_jab'
|
|
|
+ killvar 'opp_stren'
|
|
|
+ killvar 'opp_agil'
|
|
|
+ killvar 'opp_vital'
|
|
|
+ killvar 'opp_react'
|
|
|
+ killvar 'opp_shoot'
|
|
|
+ killvar 'opp_magik'
|
|
|
+ killvar 'opp_mana'
|
|
|
+ killvar 'opp_fog'
|
|
|
+ killvar 'opp_clone'
|
|
|
+ killvar 'opp_shield'
|
|
|
+ killvar 'opp_dambonus'
|
|
|
+ killvar 'opp_init'
|
|
|
+ killvar 'opp_stun'
|
|
|
+
|
|
|
+ !! Clear any allies from previous battle
|
|
|
+ i = arrsize('pcs_def')
|
|
|
+ :ClearAllyLoop
|
|
|
+ if i > 0:
|
|
|
+ gs 'fight', 'clearPCSArray', i-1
|
|
|
+ i -= 1
|
|
|
+ jump 'ClearAllyLoop'
|
|
|
+ end
|
|
|
+ killvar 'i'
|
|
|
+end
|
|
|
+
|
|
|
+if $ARGS[0] = 'clearPCSArray':
|
|
|
+!{ Delete an Ally from the pcs data arrays
|
|
|
+ ARGS[1] = Which ally slot tot delete
|
|
|
+}
|
|
|
+ i = ARGS[1]
|
|
|
+
|
|
|
+ killvar '$pcs_name', i
|
|
|
+ killvar '$pcs_image', i
|
|
|
+ killvar 'pcs_def', i
|
|
|
+ killvar 'pcs_run', i
|
|
|
+ killvar 'pcs_wrstlng', i
|
|
|
+ killvar 'pcs_kick', i
|
|
|
+ killvar 'pcs_punch', i
|
|
|
+ killvar 'pcs_jab', i
|
|
|
+ killvar 'pcs_stren', i
|
|
|
+ killvar 'pcs_agil', i
|
|
|
+ killvar 'pcs_vital', i
|
|
|
+ killvar 'pcs_react', i
|
|
|
+ killvar 'pcs_shoot', i
|
|
|
+ killvar 'pcs_magik', i
|
|
|
+ killvar 'pcs_mana', i
|
|
|
+ killvar 'pcs_fog', i
|
|
|
+ killvar 'pcs_clone', i
|
|
|
+ killvar 'pcs_shield', i
|
|
|
+ killvar 'pcs_dambonus', i
|
|
|
+ killvar 'pcs_init', i
|
|
|
+ killvar 'pcs_stun', i
|
|
|
+
|
|
|
+ killvar 'i'
|
|
|
+end
|
|
|
+
|
|
|
+if $ARGS[0] = 'randomOpp':
|
|
|
+!{ Generate a random Opponent
|
|
|
+ ARGS[1] = Optional, raise difficulty of the attacker, 0 - 50
|
|
|
+}
|
|
|
+ OppDiffBonus = ARGS[1]
|
|
|
+ i = arrsize('opp_def')
|
|
|
+ opp_name[i] = 'Opponent 1'
|
|
|
+ opp_image[i] = 'images/locations/shared/street/mugger.jpg'
|
|
|
+ opp_def[i] = rand(1,50) + OppDiffBonus
|
|
|
+ opp_run[i] = rand(1,50) + OppDiffBonus
|
|
|
+ opp_wrstlng[i] = rand(1,50) + OppDiffBonus
|
|
|
+ opp_kick[i] = rand(1,50) + OppDiffBonus
|
|
|
+ opp_punch[i] = rand(1,50) + OppDiffBonus
|
|
|
+ opp_jab[i] = rand(1,50) + OppDiffBonus
|
|
|
+ opp_stren[i] = rand(1,50) + OppDiffBonus
|
|
|
+ opp_agil[i] = rand(1,50) + OppDiffBonus
|
|
|
+ opp_vital[i] = rand(1,50) + OppDiffBonus
|
|
|
+ opp_react[i] = rand(1,50) + OppDiffBonus
|
|
|
+ opp_shoot[i] = rand(1,50) + OppDiffBonus
|
|
|
+ killvar 'OppDiffBonus'
|
|
|
+ killvar 'i'
|
|
|
+end
|
|
|
+
|
|
|
+
|
|
|
if $ARGS[0] = 'start':
|
|
|
menu_off = 1
|
|
|
inFight = 1
|
|
|
gs 'themes', 'indoors'
|
|
|
cla
|
|
|
-
|
|
|
+
|
|
|
'<center><b><font color="maroon">Fight!</font></b></center>'
|
|
|
*nl
|
|
|
'<left><img <<$set_imgh>> src="<<FUNC(''$face_image'')>>"></left><right><<$opp_image[0]>></right>'
|
|
|
*nl
|
|
|
'<left><<$pcs_firstname>></left><center>vs.</center><right><<$opp_name[0]>></right>'
|
|
|
-
|
|
|
+
|
|
|
pcs_timer = 100 - pcs_react
|
|
|
opp_timer = 100 - opp_react[0]
|
|
|
-
|
|
|
+
|
|
|
act 'Engage': gt 'fight', 'main'
|
|
|
end
|
|
|
|
|
@@ -56,7 +152,7 @@ if $ARGS[0] = 'result_check':
|
|
|
xgt 'ender', 'win'
|
|
|
exit
|
|
|
end
|
|
|
-
|
|
|
+
|
|
|
!! gs'defence'
|
|
|
!! gs'statBat'
|
|
|
|
|
@@ -159,7 +255,7 @@ if $ARGS[0] = 'opponent':
|
|
|
else
|
|
|
dynamic $fight['Attack'], 'Jab', 'pcs', 0, 0
|
|
|
end
|
|
|
-end
|
|
|
+end
|
|
|
|
|
|
if $ARGS[0] = 'player':
|
|
|
if pcs_magik > 0: gs 'fight', 'spellcast'
|
|
@@ -175,7 +271,7 @@ if $ARGS[0] = 'player':
|
|
|
act 'Jab them':
|
|
|
dynamic $fight['Attack'], 'Jab', 'opp', 0, 0
|
|
|
end
|
|
|
-end
|
|
|
+end
|
|
|
|
|
|
|
|
|
if $ARGS[0] = 'opp_spellcast':
|
|
@@ -470,14 +566,14 @@ end
|
|
|
act 'Surrender to your opponent': autocombat_surrender = 1 & gt 'ender', 'loss'
|
|
|
elseif autocombat_cheat = 1 and pcs_magick = 0:
|
|
|
xgt'boxing'
|
|
|
- end
|
|
|
+ end
|
|
|
elseif hod = 1:
|
|
|
!enemy attacks
|
|
|
'<font color = red><<$boydesc>> attacks</font>'
|
|
|
- if autocombat_cheat = 0:
|
|
|
+ if autocombat_cheat = 0:
|
|
|
act 'Continue': xgt'enemy','start'
|
|
|
act 'Surrender to your opponent': autocombat_surrender = 1 & gt 'ender', 'loss'
|
|
|
- elseif autocombat_cheat = 1:
|
|
|
+ elseif autocombat_cheat = 1:
|
|
|
xgt'enemy','start'
|
|
|
end
|
|
|
end
|