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 5398
197 Limit Break VX 3 Man... 2008.10.28 1777
196 맵/타일 GubiD's Isometric Maps for RPG Maker VX 1 Man... 2008.10.28 1681
195 영상 ??(Avi play ver beta 0.8) 4 Man... 2008.10.28 1575
194 전투 오버 드라이브 프로블럼 2 Man... 2008.10.28 2268
193 새로운 종류의 세이브 스크립트!! 8 Man... 2008.10.28 3517
192 디러그 시스템?? 1 Man... 2008.10.28 1247
191 베틀 스크린 톤 체인지?? 무슨 말? 4 Man... 2008.10.28 1616
190 기타 TagNote v2.0 5 Man... 2008.10.28 1996
189 Detailed Call Script Error Mesage 3 Man... 2008.10.28 1258
» 변수/스위치 Variable Criticals Man... 2008.10.28 1480
187 타이틀/게임오버 New Title Screen 3 Man... 2008.10.28 1832
186 기타 RPG 2000이나 RPG 2003처럼 전체화면으로 나오게 하는 스크립트(대박) 21 Man... 2008.10.28 4821
185 Khai's Window Helper 1.4 1 Man... 2008.10.28 1272
184 More SaveFlies(대박) 2 Man... 2008.10.28 2125
183 Attribute System Man... 2008.10.28 1293
182 폴스 세이브 4 Man... 2008.10.28 2343
181 타이틀/게임오버 Random Title Screen 2 Man... 2008.10.28 1454
180 미니맵 Map-System by AmIMeYet [미니맵] 9 Man... 2008.10.28 2746
179 아이템 아이템 프라이스 체인저?? Man... 2008.10.28 2385
178 Good VS EVil? 4 Man... 2008.10.28 1641
Board Pagination Prev 1 ... 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 Next
/ 32