-
Notifications
You must be signed in to change notification settings - Fork 1
builtin life
boyism80 edited this page Jun 6, 2025
·
11 revisions
이 문서는 Life 타입의 객체가 사용할 수 있는 함수들을 설명합니다. Life는 Object 타입을 상속받으며 hp, mp 등을 가진 타입입니다. mob과 character가 이 타입을 상속받습니다.
- message
- hp
- mp
- heal
- damage
- mp_up
- mp_down
- action
- spell
- spells
- cast
- cc
- add_cc
- remove_cc
- attack
- damage_rate
- damage_derate
-
설명:
호출된 객체(self)가 메시지를 보냅니다. 객체 타입이 CHARACTER가 아니면 동작하지 않습니다. -
파라미터:
-
message:string: 출력할 문자열 -
type:number: MESSAGE_TYPE enum 값(선택, 기본: MESSAGE_TYPE_STATE) 기본값: MESSAGE_TYPE_STATE
-
- 반환값: 없음
-
예제:
me:message("Hello world!") me:message("Status update", MESSAGE_TYPE_STATE)
호출된 객체(self)의 체력을 가져오거나 설정하는 두 가지 기능을 합니다.
-
설명:
호출된 객체(self)의 현재 체력을 반환합니다. - 파라미터: 없음
-
반환값:
getter:number(현재 HP) -
예제:
-- HP 조회 local current_hp = me:hp() me:message("Current HP: " .. current_hp)
-
설명:
호출된 객체(self)의 체력을value로 설정합니다. -
파라미터:
-
value:number: 설정할 체력 값
-
-
반환값:
setter: 없음 -
예제:
-- HP 설정 me:hp(100) me:message("Set HP to 100")
호출된 객체(self)의 마나를 가져오거나 설정하는 두 가지 기능을 합니다.
-
설명:
호출된 객체(self)의 현재 마나를 반환합니다. - 파라미터: 없음
-
반환값:
getter:number(현재 MP) -
예제:
-- MP 조회 local current_mp = me:mp() me:message("Current MP: " .. current_mp)
-
설명:
호출된 객체(self)의 마나를value로 설정합니다. -
파라미터:
-
value:number: 설정할 마나 값
-
-
반환값:
setter: 없음 -
예제:
-- MP 설정 me:mp(50) me:message("Set MP to 50")
-
설명:
호출된 객체(self)의 HP를 지정한 값만큼 회복합니다. -
파라미터:
-
value:number: 회복할 HP 값
-
- 반환값: 없음
-
예제:
me:heal(30)
-
설명:
호출된 객체(self)에게 지정한 피해를 입힙니다. 치명타 여부를 생략하면 false로 처리됩니다. -
파라미터:
-
value:number: 피해량 -
from:life: 피해를 입힌 객체 -
critical:boolean: 치명타 여부(선택, 기본: false) 기본값: false
-
- 반환값: 없음
-
예제:
me:damage(20, attacker) me:damage(50, attacker, true) -- 치명타
호출된 객체(self)의 마나를 가져오거나 설정하는 두 가지 기능을 합니다.
-
설명:
호출된 객체(self)의 현재 마나를 반환합니다. - 파라미터: 없음
-
반환값:
getter:number(현재 MP) -
예제:
-- MP 조회 local current_mp = me:mp() me:message("Current MP: " .. current_mp)
-
설명:
호출된 객체(self)의 마나를value로 설정합니다. -
파라미터:
-
value:number: 설정할 마나 값
-
-
반환값:
setter: 없음 -
예제:
-- MP 설정 me:mp(50) me:message("Set MP to 50")
호출된 객체(self)의 마나를 가져오거나 설정하는 두 가지 기능을 합니다.
-
설명:
호출된 객체(self)의 현재 마나를 반환합니다. - 파라미터: 없음
-
반환값:
getter:number(현재 MP) -
예제:
-- MP 조회 local current_mp = me:mp() me:message("Current MP: " .. current_mp)
-
설명:
호출된 객체(self)의 마나를value로 설정합니다. -
파라미터:
-
value:number: 설정할 마나 값
-
-
반환값:
setter: 없음 -
예제:
-- MP 설정 me:mp(50) me:message("Set MP to 50")
-
설명:
호출된 객체(self)가 지정된 행동을 수행합니다. duration 또는 sound를 생략할 수 있으며, 생략 시 기본값을 사용합니다. -
파라미터:
-
action:number: ACTION enum 값 -
duration:number: DURATION enum 값(선택, 기본: DURATION_SPELL) 기본값: DURATION_SPELL -
sound:number: 재생할 사운드 ID(선택, 기본: 0) 기본값: 0
-
- 반환값: 없음
-
예제:
me:action(ACTION_ATTACK) me:action(ACTION_SPELL, DURATION_SPELL, 5)
-
설명:
호출된 객체(self)의 스펠 목록에서 지정된 인덱스에 해당하는 스펠 객체를 반환합니다. -
파라미터:
-
index:number: 스펠 인덱스
-
- 반환값: 스펠 객체 또는 nil
-
예제:
local sp = me:spell(1) if sp == nil then me:message("No such spell.") else me:message("Spell: " .. tostring(sp)) end
-
설명:
호출된 객체(self)의 모든 스펠 객체 목록을 테이블로 반환합니다. - 반환값: 스펠 객체 목록 테이블
-
예제:
local all_spells = me:spells() for i = 1, #all_spells do me:message("Spell: " .. tostring(all_spells[i])) end
-
설명:
호출된 객체(self)가 지정된 스펠을 시전합니다. you를 생략하면 자신에게 시전합니다. -
파라미터:
-
name:string: 스펠 이름 -
you:life: 대상 객체(선택)
-
- 반환값: 없음
-
예제:
me:cast("비영사천문") me:cast("부활", target)
-
설명:
호출된 객체(self)의 군중 제어 상태를 가져오거나 설정합니다. 인자를 생략하면 현재 CC 상태를 반환합니다. -
파라미터:
-
cc:number: CROWD_CONTROL enum 값(선택)
-
- 반환값: getter: 정수(현재 CC 상태); setter: 없음
-
예제:
-- CC 조회 local current_cc = me:cc() me:message("Current CC: " .. current_cc) -- CC 설정 me:cc(CROWD_CONTROL_STUN)
-
설명:
호출된 객체(self)에 지정된 군중 제어 상태를 추가합니다. -
파라미터:
-
cc:number: CROWD_CONTROL enum 값
-
- 반환값: 없음
-
예제:
me:add_cc(CROWD_CONTROL_STUN)
-
설명:
호출된 객체(self)의 지정된 군중 제어 상태를 제거합니다. -
파라미터:
-
cc:number: CROWD_CONTROL enum 값
-
- 반환값: 없음
-
예제:
me:remove_cc(CROWD_CONTROL_STUN)
-
설명:
호출된 객체(self)가 공격을 수행합니다. duration을 생략하면 DURATION_ATTACK을 사용합니다. -
파라미터:
-
duration:number: DURATION enum 값(선택, 기본: DURATION_ATTACK) 기본값: DURATION_ATTACK
-
- 반환값: 없음
-
예제:
me:attack() me:attack(DURATION_ATTACK)
-
설명:
호출된 객체(self)의 데미지 비율을 가져오거나 설정합니다. 인자를 생략하면 현재 값을 반환합니다. -
파라미터:
-
value:number: 데미지 비율 설정값(선택)
-
- 반환값: getter: 정수(현재 데미지 비율); setter: 없음
-
예제:
-- 데미지 비율 조회 local dr = me:damage_rate() me:message("Damage Rate: " .. dr) -- 데미지 비율 설정 me:damage_rate(120)
-
설명:
호출된 객체(self)의 데미지 경감 비율을 가져오거나 설정합니다. 인자를 생략하면 현재 값을 반환합니다. -
파라미터:
-
value:number: 데미지 경감 비율 설정값(선택)
-
- 반환값: getter: 정수(현재 데미지 경감 비율); setter: 없음
-
예제:
-- 데미지 경감 비율 조회 local ddr = me:damage_derate() me:message("Damage Derate: " .. ddr) -- 데미지 경감 비율 설정 me:damage_derate(80)