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
457 스킬 스킬, 아이템 적아 구분 없이 쓰기 10 file EuclidE 2011.10.16 2900
456 스킬 스킬 필요조건에 살짝 손대봤습니다. -- 수정 18 아이미르 2011.03.23 2499
455 스킬 스킬 필요 조건(번역) 23 file 훈덕 2009.02.03 4644
454 전투 스킬 커맨드 스크립트 16 아방스 2009.02.05 4535
453 상점 스킬 샾 스크립트 2.0 48 아방스 2008.03.05 6628
452 스킬 스킬 사용시 컷인 연출 (번역) 26 file 훈덕 2009.02.05 5387
451 기타 스크립트로 커먼 이벤트 실행 [수정] 3 허걱 2009.08.17 2311
450 기타 스크립트강좌 4 아하!잘봤어요. 2009.05.04 2158
449 기타 스크린샷 기능 14 비극ㆍ 2010.04.19 2090
448 이동 및 탈것 스위치 on일때 못 움직이게...(이동고정) 6 허걱 2009.07.14 2326
447 메시지 소설풍(노벨풍) 문자 스크립트 31 file 맛난호빵 2011.01.03 5552
446 저장 세이브/로드가 불가능한 스크립트!!! 9 file ~AYARSB~ 2010.03.08 3298
445 기타 세이브 포인트 2 비극ㆍ 2010.04.19 2518
444 저장 세이브 파일 개수 16개로 늘리기 (기본 세이브 엔진용) 1 file Bunny_Boy 2015.09.07 817
443 저장 세이브 시스템 확장 스크립트 9 file 신규회원 2012.02.24 3315
442 기타 설명하기 힘든 스크립트 (스크린샷 확인) 10 file 사람이라면? 2010.08.16 3818
441 직업 서브클래스 선택 시스템 Subclass Selection System 7 file 카르와푸딩의아틀리에 2009.06.30 3943
440 새로운 종류의 세이브 스크립트!! 8 Man... 2008.10.28 3517
439 전투 새로운 전투돌입효과 29 file RPGbooster 2008.10.08 5079
438 맵/타일 새로운 월드맵 만들기 (로맨싱사가풍) 37 file 078656577er 2009.10.09 6151
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