VX 스크립트

변수/스위치
2008.10.28 19:06

Variable Criticals

조회 수 1480 추천 수 0 댓글 0
Variable Criticals

By adding a special line to the notes field, you can change how powerful a critical is for a weapon or enemy.

<critical_multiplier n>

Note that this will only be relevant for enemies if they are capable of dealing critical hits. The default, without this script, is 3. The default with the script is 3, except for unarmed actors where it is 2. Where a character is wielding two weapons, the better multiplier is used.

This script requires the TagNote 2.0 cript to function.

Download: http://chthonic.150m.com/scratch/Queex_scripts.zip
################################
# Variable Criticals #
########################################################
# Version 1.1 #
# Author: Queex #
# Licence: Creative Commons non-commercial attributive #
# Requires: TagNote 2.0+ #
#########################################################
# This replaces the fixed critical hit damage multipler #
# As before, weapons and enemies have a multiplier of 3 #
# if a new one is not specified. To give a weapon or #
# enemy a different bonus, include: #
# <critical_multiplier n> #
# in the note field. Decimals are allowed. This system #
# currently allows values less than 1 (so on a #
# critical, less damage is done). You can also adjust #
# the default unarmed multiplier, and the default #
# multipliers for weapons where it is not specified in #
# the notes field. #
# #
# Version History: #
# 1.0 First version #
# 1.1 Updated to TagNote 2.0 RELEASE #
#########################################################

class Game_Actor < Game_Battler

include TAGNOTE

UNARMED_MULTIPLIER=2
DEFAULT_MULTIPLIER=3

def critical_multiplier
multi=-1;

for weapon in weapons.compact
tmp = weapon_crit_multiplier(weapon)
multi = tmp if tmp > multi
end

multi = UNARMED_MULTIPLIER if multi < 0

return multi
end

def weapon_crit_multiplier(weapon)
tmp = get_tag(weapon.note,"critical_multiplier")
return tmp.to_f unless tmp==nil
return DEFAULT_MULTIPLIER
end
end

class Game_Enemy < Game_Battler

DEFAULT_MULTIPLIER=3

def critical_multiplier

tmp = get_tag(enemy.note,"critical_multiplier")
return tmp.to_f unless tmp==nil
return DEFAULT_MULTIPLIER
end
end

class Game_Battler
#--------------------------------------------------------------------------
# * Calculation of Damage From Normal Attack
# attacker : Attacker
# The results are substituted for @hp_damage
#--------------------------------------------------------------------------
def make_attack_damage_value(attacker)
damage = attacker.atk * 4 - self.def * 2 # base calculation
damage = 0 if damage < 0 # if negative, make 0
damage *= elements_max_rate(attacker.element_set) # elemental adjustment
damage /= 100
if damage == 0 # if damage is 0,
damage = rand(2) # half of the time, 1 dmg
elsif damage > 0 # a positive number?
@critical = (rand(100) < attacker.cri) # critical hit?
@critical = false if prevent_critical # criticals prevented?
if @critical
damage *= critical_multiplier # critical adjustment
damage = damage.to_i
end
end
damage = apply_variance(damage, 20) # variance
damage = apply_guard(damage) # guard adjustment
@hp_damage = damage # damage HP
end
end

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 3 습작 2012.12.24 5408
597 기타 Base Project 15 아방스 2009.02.05 3063
596 메뉴 CogWheel Style Menu Bars 6 아방스 2008.03.09 2777
595 메뉴 CogWheelBars 시스템. 13 file 할렘 2009.02.20 4362
594 전투 Crissaegrim ABS 2.0.5 최신 48 file RPGbooster 2008.10.08 8768
593 기타 Crissaegrim Farm BETA 1.0.0 10 Man... 2008.11.22 3094
592 HUD Crissaegrim HUD 2.0!! 13 Man... 2008.10.29 2852
591 Crissaegrim SBABS BETA 1.0 12 file 21stcentury 2008.10.08 2543
590 기타 Crissaegrim 농장시스템 한글화 28 file 도심 2009.12.22 3606
589 버그픽스 DerVVulfman's Tileset Reader VX Bug Fix 습작 2014.11.16 701
588 Detailed Call Script Error Mesage 3 Man... 2008.10.28 1258
587 Direction Movement Style 4 Man... 2008.10.28 1719
586 메시지 Display Flipped Picture 스크립트 11 Love♡ 2009.11.09 3585
585 장비 Disposable Ammo(또 있는 곳을 잘 읽으셔야 합니다.) 2 Man... 2008.10.29 1696
584 스킬 DQ특기풍스킬 - KGC 4 카르와푸딩의아틀리에 2009.08.19 3288
583 기타 Drop Options 1.1 by Modern Algebra 4 Alkaid 2010.09.16 1509
582 Enable Usage of Rmxp 캐릭터(?) 5 Man... 2008.10.28 2413
581 장비 Equipment Constraints 2.5b by Modern Algebra 3 Alkaid 2010.09.17 2001
580 장비 Equipment Set Bonus 6 Man... 2008.10.25 1849
579 ES Character Info 6 file RPGbooster 2008.10.08 1824
578 메시지 Etude87 Dialogue History Scene file 습작 2014.07.07 1069
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ... 32 Next
/ 32