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 기타 Fullscreen++ by Zeus81 (VX/VXA) 2 Alkaid 2012.09.01 2230
596 전투 Slip_Damage_Ex - 슬립데미지 확장기능 (상태별 슬립데미지 적용) 7 허걱 2012.07.24 2198
595 메시지 메시지를 빠르게 넘겨주는 스크립트 3 타카나시 소라 2012.07.23 5038
594 전투 Team_Ilias's_Old_Project_Demo 4 습작 2012.07.11 2101
593 맵/타일 누가 이전에 올렸을지도..... KGC_MapLightening 3 file 클로버군 2012.07.02 2745
592 파티 5인 파티 프로젝트 V1.1 4 file 지나가는떡꼬치 2012.06.30 2988
591 기타 Etude87_GAGA_Chat 4 습작 2012.06.14 1916
590 이름입력 Etude87_HG_Hangul_Name_Scene file 습작 2012.06.14 1948
589 기타 Etude87_Hangul_utf8_List 습작 2012.06.04 1665
588 전투 Etude87_Tankentai_Addon ver.1.0 7 file 습작 2012.06.03 2882
587 퀘스트 퀘스트 마크 표시용 스크립트 10 file 허걱 2012.05.22 3704
586 그래픽 Arevulopapo's Particle Engine for VX/Ace by PK8 1 Alkaid 2012.05.13 2873
585 기타 078656577er님의 스크립트를 개조한, 사격용 스크립트 1 file 타코 2012.03.16 2519
584 맵/타일 Etude87_Map_Remember_VX ver.1.2 3 습작 2012.03.06 2430
583 아이템 드롭 아이템 확장 6 신규회원 2012.02.24 2977
582 기타 멥 이름 띄우기 10 신규회원 2012.02.24 3626
581 저장 세이브 시스템 확장 스크립트 9 file 신규회원 2012.02.24 3315
580 저장 Neo Save System VI by Helladen 2 Alkaid 2012.01.15 2886
579 기타 화면 해상도(640 X 480) 스크립트 6 file 쿠쿠밥솥 2012.01.10 3972
578 전투 XAS Hero Edition VX Manual 번역 1 케이언 2012.01.02 3558
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