Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PM x HDR Roy PR #2261

Merged
merged 61 commits into from
Mar 1, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
5603340
Cloud Downtilt BKB Nerf
LunchablesTX Jan 20, 2024
8130b8f
Roy Uair Nerf
LunchablesTX Jan 22, 2024
aea29b3
Revert "Roy Uair Nerf"
LunchablesTX Jan 22, 2024
3a3b233
First commit for PM Roy animations
LunchablesTX Jan 23, 2024
9cde9b8
pushing to fix a thing
LunchablesTX Jan 25, 2024
2018f74
lots of fixes to normals
LunchablesTX Jan 28, 2024
8cb1141
committing before working on specials
LunchablesTX Jan 30, 2024
349fd52
side b 1 done
LunchablesTX Jan 30, 2024
74a2f03
delimiters error commit
LunchablesTX Jan 31, 2024
6509507
HAHA OOPS
LunchablesTX Jan 31, 2024
4c378da
side b xx^ and xx> added before starting xxV
LunchablesTX Jan 31, 2024
8997c2b
finished side b base
LunchablesTX Jan 31, 2024
340dac2
side b buffer that's in another branch bcuz I wanted to try it and ad…
LunchablesTX Feb 1, 2024
6c17aa2
pushing for yooni
LunchablesTX Feb 2, 2024
7222bb2
commiting before changing base
LunchablesTX Feb 2, 2024
28fabb9
Revert "commiting before changing base"
LunchablesTX Feb 2, 2024
b915545
revert uair priority potentially and utilt endlag
LunchablesTX Feb 2, 2024
a3bd75e
pushing a fuck ton of changes, extremely productive night honestly
LunchablesTX Feb 3, 2024
e0ec905
99% done, committing all my work tonight
LunchablesTX Feb 4, 2024
be237f1
updated nair sfx. build is basically done as for what I can do at thi…
LunchablesTX Feb 4, 2024
9dd7b53
adding angled ftilt commands before they're coded in the status script
LunchablesTX Feb 4, 2024
2804ff6
accidentally put a chrom change in here, also fixed nair sfx and ac
LunchablesTX Feb 5, 2024
c082986
compressed side b acmd lines and actually fixed nair sfx fr fr?
LunchablesTX Feb 6, 2024
68df3a3
side b 2 thing real quick
LunchablesTX Feb 6, 2024
9023b7e
getting rid of random line in nair
LunchablesTX Feb 6, 2024
959cd91
one last thing, making dash attack script not spawn hitboxes that are…
LunchablesTX Feb 6, 2024
69d91a1
same for side b xx>
LunchablesTX Feb 6, 2024
596b7b0
aaaaaaaaaaaaand ftilt
LunchablesTX Feb 6, 2024
0baf4f2
uair size nerf revert bcuz hitbox priority was changed instead
LunchablesTX Feb 6, 2024
3f05dfc
deleted commented lines from roy dsmash gfx
LunchablesTX Feb 7, 2024
0fad8db
adjusted DED values to not make breaking shields very degenerate
LunchablesTX Feb 7, 2024
5b14789
slight side b 1 revert
LunchablesTX Feb 7, 2024
4abfdc4
last second bair gfx change and changing side b 1 back to original sh…
LunchablesTX Feb 7, 2024
83bf23b
removed unnecessary ftilt lines, also buffed ftilt kb slightly and re…
LunchablesTX Feb 7, 2024
4f5adc3
tone that back a smidge
LunchablesTX Feb 7, 2024
aad5f4c
change side b damage nerfs in general
LunchablesTX Feb 7, 2024
2485ccf
updating sfx call since I ported pm sfx
LunchablesTX Feb 7, 2024
5c0508d
fair sweetspot kbg revert, tip fair no longer reverse (lol), dair lan…
LunchablesTX Feb 7, 2024
4796aa0
dash attack no reverse hit
LunchablesTX Feb 7, 2024
1f78fe1
Merge branch 'dev' into PMRoyProject
stingers135 Feb 10, 2024
5b40018
acmd and motion patch for side b 4 bakc
LunchablesTX Feb 10, 2024
41c78bc
Merge branch 'PMRoyProject' of https://github.com/LunchablesTX/HewDra…
stingers135 Feb 10, 2024
0b9f3ac
yay
stingers135 Feb 10, 2024
7b6e6ae
Revert "Merge branch 'dev' into PMRoyProject"
LunchablesTX Feb 10, 2024
c565a25
Side B4 Back Reimpl
WuBoytH Feb 11, 2024
1ef223e
cleaning up reverse swing, cleaning up ded sfx, up air angle 77
LunchablesTX Feb 11, 2024
6131933
Merge branch 'dev' into PMRoyProject
LunchablesTX Feb 11, 2024
da7f671
matched reverse swing hitlag to other 4th hits, slight increase tip size
LunchablesTX Feb 11, 2024
44b567b
Merge branch 'HDR-Development:dev' into PMRoyProject
LunchablesTX Feb 13, 2024
e55d4dd
Merge branch 'HDR-Development:dev' into PMRoyProject
LunchablesTX Feb 14, 2024
de58337
Final pushes for Roy PR before Nightly
LunchablesTX Feb 17, 2024
f9f1934
small counter bkb buff
LunchablesTX Feb 17, 2024
a90a00a
More counter changes, did not realize how weak it was before.
LunchablesTX Feb 18, 2024
216c92d
Merge branch 'HDR-Development:dev' into PMRoyProject
LunchablesTX Feb 18, 2024
8171bf8
Merge branch 'HDR-Development:dev' into PMRoyProject
LunchablesTX Feb 18, 2024
b421f34
Merge branch 'HDR-Development:dev' into PMRoyProject
LunchablesTX Feb 18, 2024
6ed9d33
Merge branch 'HDR-Development:dev' into PMRoyProject
LunchablesTX Feb 21, 2024
38886d6
fixing is_execute line for counter ft_motion_rate
LunchablesTX Feb 21, 2024
49bceaa
Merge branch 'PMRoyProject' of https://github.com/LunchablesTX/HewDra…
LunchablesTX Feb 21, 2024
4aee89f
Merge branch 'HDR-Development:dev' into PMRoyProject
LunchablesTX Feb 23, 2024
d1f5569
Merge branch 'dev' into PMRoyProject
WuBoytH Feb 25, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions dynamic/src/consts.rs
Original file line number Diff line number Diff line change
Expand Up @@ -994,6 +994,10 @@ pub mod vars {
// flags
pub const TRAIL_EFFECT: i32 = 0x0100;
}
pub mod status {
// flags
pub const SIDE_B_REVERSE : i32 = 0x1150;
}
}

pub mod shotos {
Expand Down
159 changes: 86 additions & 73 deletions fighters/roy/src/acmd/aerials.rs

Large diffs are not rendered by default.

11 changes: 5 additions & 6 deletions fighters/roy/src/acmd/ground.rs
Original file line number Diff line number Diff line change
Expand Up @@ -30,13 +30,12 @@ unsafe extern "C" fn roy_attack_dash_game(fighter: &mut L2CAgentBase) {
let boma = fighter.boma();
frame(lua_state, 13.0);
if is_excute(fighter) {
ATTACK(fighter, 0, 0, Hash40::new("sword1"), 13.0, 110, 47, 0, 73, 4.0, 0.0, 0.0, 2.25, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_cutup"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 1, 0, Hash40::new("armr"), 13.0, 110, 47, 0, 73, 4.0, 0.0, 0.0, 0.0, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_cutup"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 2, 0, Hash40::new("shoulderl"), 13.0, 110, 47, 0, 73, 2.5, 0.0, 0.0, 0.0, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_cutup"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 3, 0, Hash40::new("sword1"), 9.0, 100, 60, 0, 73, 3.5, 0.0, 0.0, 9.0, None, None, None, 0.8, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_cutup"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_PUNCH, *ATTACK_REGION_SWORD);
ATK_SET_SHIELD_SETOFF_MUL_arg4(fighter, 0, 1, 2, 1.25);
ATTACK(fighter, 0, 0, Hash40::new("sword1"), 13.0, 110, 50, 0, 70, 4.0, 0.0, 0.0, 2.25, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_cutup"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 1, 0, Hash40::new("armr"), 13.0, 110, 50, 0, 70, 4.0, 0.0, 0.0, 0.0, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_cutup"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 2, 0, Hash40::new("shoulderl"), 13.0, 110, 50, 0, 70, 2.5, 0.0, 0.0, 0.0, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_cutup"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 3, 0, Hash40::new("sword1"), 9.0, 361, 55, 0, 35, 3.5, 0.0, 0.0, 9.0, None, None, None, 0.8, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_cutup"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_PUNCH, *ATTACK_REGION_SWORD);
}
wait(lua_state, 4.0);
frame(lua_state, 18.0);
if is_excute(fighter) {
AttackModule::clear_all(boma);
}
Expand Down
41 changes: 40 additions & 1 deletion fighters/roy/src/acmd/other.rs
Original file line number Diff line number Diff line change
Expand Up @@ -243,6 +243,42 @@ unsafe extern "C" fn escape_air_slide_game(fighter: &mut L2CAgentBase) {
}
}

unsafe extern "C" fn roy_jumpback_sound(fighter: &mut L2CAgentBase) {
let lua_state = fighter.lua_state_agent;
let boma = fighter.boma();
frame(lua_state, 1.0);
if is_excute(fighter) {
PLAY_SE(fighter, Hash40::new("vc_roy_jump01"));
}
}

unsafe extern "C" fn roy_jumpfront_sound(fighter: &mut L2CAgentBase) {
let lua_state = fighter.lua_state_agent;
let boma = fighter.boma();
frame(lua_state, 1.0);
if is_excute(fighter) {
PLAY_SE(fighter, Hash40::new("vc_roy_jump01"));
}
}

unsafe extern "C" fn roy_jumpbackmini_sound(fighter: &mut L2CAgentBase) {
let lua_state = fighter.lua_state_agent;
let boma = fighter.boma();
frame(lua_state, 1.0);
if is_excute(fighter) {
PLAY_SE(fighter, Hash40::new("vc_roy_jump01"));
}
}

unsafe extern "C" fn roy_jumpfrontmini_sound(fighter: &mut L2CAgentBase) {
let lua_state = fighter.lua_state_agent;
let boma = fighter.boma();
frame(lua_state, 1.0);
if is_excute(fighter) {
PLAY_SE(fighter, Hash40::new("vc_roy_jump01"));
}
}

pub fn install() {
smashline::Agent::new("roy")
.acmd("sound_damageflyhi", damageflyhi_sound)
Expand All @@ -258,6 +294,9 @@ pub fn install() {
.acmd("game_appeallwr", roy_appeallwr_game)
.acmd("game_appeallwl", roy_appeallwl_game)
.acmd("game_escapeair", escape_air_game)
.acmd("game_escapeairslide", escape_air_slide_game)
.acmd("sound_jumpback", roy_jumpback_sound)
.acmd("sound_jumpfront", roy_jumpfront_sound)
.acmd("sound_jumpbackmini", roy_jumpbackmini_sound)
.acmd("sound_jumpfrontmini", roy_jumpfrontmini_sound)
.install();
}
60 changes: 15 additions & 45 deletions fighters/roy/src/acmd/smashes.rs
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,10 @@ unsafe extern "C" fn roy_attack_s4_s_game(fighter: &mut L2CAgentBase) {
frame(lua_state, 13.2);
if is_excute(fighter) {
FT_MOTION_RATE(fighter, 1.0/(14.0-13.2));
ATTACK(fighter, 0, 0, Hash40::new("sword1"), 20.0, 361, 76, 0, 65, 4.3, 0.0, 0.0, 2.5, None, None, None, 1.1, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_fire"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 1, 0, Hash40::new("armr"), 20.0, 361, 76, 0, 65, 3.0, 0.0, 0.0, 0.0, None, None, None, 1.1, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_fire"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 2, 0, Hash40::new("colonells"), 20.0, 361, 76, 0, 65, 3.5, 0.0, 0.0, 0.0, None, None, None, 1.1, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_fire"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 3, 0, Hash40::new("sword1"), 12.0, 361, 73, 0, 30, 3.5, 0.0, 0.0, 8.75, None, None, None, 0.9, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_cutup"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_PUNCH, *ATTACK_REGION_SWORD);
ATTACK(fighter, 0, 0, Hash40::new("sword1"), 20.0, 361, 76, 0, 65, 4.3, 0.0, 0.0, 2.5, None, None, None, 1.1, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_fire"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 1, 0, Hash40::new("armr"), 20.0, 361, 76, 0, 65, 3.0, 0.0, 0.0, 0.0, None, None, None, 1.1, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_fire"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 2, 0, Hash40::new("colonells"), 20.0, 361, 76, 0, 65, 3.5, 0.0, 0.0, 0.0, None, None, None, 1.1, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_fire"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 3, 0, Hash40::new("sword1"), 12.0, 361, 73, 0, 30, 3.5, 0.0, 0.0, 8.75, None, None, None, 0.9, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_cutup"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_PUNCH, *ATTACK_REGION_SWORD);
AttackModule::set_attack_height_all(boma, app::AttackHeight(*ATTACK_HEIGHT_HIGH), false);
}
frame(lua_state, 14.0);
Expand Down Expand Up @@ -140,38 +140,23 @@ unsafe extern "C" fn roy_attack_lw4_game(fighter: &mut L2CAgentBase) {
if is_excute(fighter) {
WorkModule::on_flag(boma, *FIGHTER_STATUS_ATTACK_FLAG_START_SMASH_HOLD);
}
frame(lua_state, 5.0);
if is_excute(fighter) {
FT_MOTION_RATE(fighter, 1.0/(6.1-5.0));
}
frame(lua_state, 6.1);
frame(lua_state, 6.0);
if is_excute(fighter) {
FT_MOTION_RATE(fighter, 3.0/(8.5-6.1));
ATTACK(fighter, 0, 0, Hash40::new("sword1"), 18.0, 75, 91, 0, 42, 4.25, 0.0, 0.0, 2.0, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_cutup"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 1, 0, Hash40::new("armr"), 18.0, 75, 91, 0, 42, 3.1, 0.0, 0.0, 0.0, None, None, None, 1.1, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_fire"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_FIRE, *ATTACK_REGION_SWORD);
ATTACK(fighter, 2, 0, Hash40::new("colonells"), 18.0, 75, 91, 0, 42, 3.5, 0.0, 0.0, 0.0, None, None, None, 1.1, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_fire"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_FIRE, *ATTACK_REGION_SWORD);
ATTACK(fighter, 0, 0, Hash40::new("sword1"), 18.0, 75, 91, 0, 42, 4.25, 0.0, 0.0, 2.0, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_fire"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 1, 0, Hash40::new("armr"), 18.0, 75, 91, 0, 42, 3.1, 0.0, 0.0, 0.0, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_fire"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 2, 0, Hash40::new("colonells"), 18.0, 75, 91, 0, 42, 3.5, 0.0, 0.0, 0.0, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_fire"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 3, 0, Hash40::new("sword1"), 11.0, 361, 87, 0, 25, 3.5, 0.0, 0.0, 8.5, None, None, None, 0.9, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_cutup"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_PUNCH, *ATTACK_REGION_SWORD);
AttackModule::set_attack_height_all(boma, app::AttackHeight(*ATTACK_HEIGHT_LOW), false);
}
frame(lua_state, 8.5);
if is_excute(fighter) {
FT_MOTION_RATE(fighter, 1.0/(9.0-8.5));
AttackModule::clear_all(boma);
}
frame(lua_state, 9.0);
if is_excute(fighter) {
FT_MOTION_RATE(fighter, 1.0);
AttackModule::clear_all(boma);
}
frame(lua_state, 20.0);
frame(lua_state, 10.0);
if is_excute(fighter) {
ATTACK(fighter, 0, 0, Hash40::new("sword1"), 14.0, 75, 91, 0, 42, 4.25, 0.0, 0.0, 2.0, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_cutup"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 1, 0, Hash40::new("armr"), 14.0, 75, 91, 0, 42, 3.1, 0.0, 0.0, 0.0, None, None, None, 1.1, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_fire"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_FIRE, *ATTACK_REGION_SWORD);
ATTACK(fighter, 2, 0, Hash40::new("colonells"), 14.0, 75, 91, 0, 42, 3.5, 0.0, 0.0, 0.0, None, None, None, 1.1, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_fire"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_FIRE, *ATTACK_REGION_SWORD);
ATTACK(fighter, 3, 0, Hash40::new("sword1"), 10.0, 361, 87, 0, 25, 3.5, -1.6, 0.0, 8.5, None, None, None, 0.9, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_cutup"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_PUNCH, *ATTACK_REGION_SWORD);
ATTACK(fighter, 0, 0, Hash40::new("sword1"), 14.0, 75, 91, 0, 42, 4.25, 0.0, 0.0, 2.0, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_fire"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 1, 0, Hash40::new("armr"), 14.0, 75, 91, 0, 42, 3.1, 0.0, 0.0, 0.0, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_fire"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 2, 0, Hash40::new("colonells"), 14.0, 75, 91, 0, 42, 3.5, 0.0, 0.0, 0.0, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_fire"), *ATTACK_SOUND_LEVEL_L, *COLLISION_SOUND_ATTR_ROY_HIT, *ATTACK_REGION_SWORD);
ATTACK(fighter, 3, 0, Hash40::new("sword1"), 10.0, 361, 87, 0, 25, 3.5, 0.0, 0.0, 8.5, None, None, None, 0.9, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_cutup"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_PUNCH, *ATTACK_REGION_SWORD);
AttackModule::set_attack_height_all(boma, app::AttackHeight(*ATTACK_HEIGHT_LOW), false);
}
wait(lua_state, 3.0);
frame(lua_state, 18.0);
if is_excute(fighter) {
AttackModule::clear_all(boma);
}
Expand Down Expand Up @@ -201,29 +186,14 @@ unsafe extern "C" fn roy_attack_lw4_effect(fighter: &mut L2CAgentBase) {
if is_excute(fighter) {
LANDING_EFFECT(fighter, Hash40::new("sys_atk_smoke"), Hash40::new("top"), 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, false);
}
frame(lua_state, 10.0);
if is_excute(fighter) {
AFTER_IMAGE_OFF(fighter, 4);
EFFECT_OFF_KIND(fighter, Hash40::new("roy_sword_light"), false, true);
EFFECT_OFF_KIND(fighter, Hash40::new("roy_sword"), false, false);
EFFECT_OFF_KIND(fighter, Hash40::new("roy_fire"), false, true);
}
frame(lua_state, 19.0);
if is_excute(fighter) {
EFFECT_FOLLOW(fighter, Hash40::new("roy_attack_fire"), Hash40::new("sword1"), 0, 0, 0, 0, 0, 0, 0.9, true);
LAST_EFFECT_SET_RATE(fighter, 1.25);
EFFECT_FOLLOW(fighter, Hash40::new("roy_fire"), Hash40::new("sword1"), 0, 0, 0, 0, 0, 0, 0.8, true);
LAST_EFFECT_SET_RATE(fighter, 1.25);
AFTER_IMAGE4_ON_arg29(fighter, Hash40::new("tex_roy_sword1"), Hash40::new("tex_roy_sword2"), 15, Hash40::new("sword1"), 0.0, 0.0, -0.8, Hash40::new("sword1"), -0.0, -0.0, 14.5, true, Hash40::new("roy_sword"), Hash40::new("sword1"), 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0, *EFFECT_AXIS_X, 0, *TRAIL_BLEND_ALPHA, 101, *TRAIL_CULL_NONE, 1.3, 0.2);
}
frame(lua_state, 20.0);
if is_excute(fighter) {
EFFECT_FOLLOW(fighter, Hash40::new("roy_sword_light"), Hash40::new("sword1"), 0, 0, 10.55, 0, 0, 0, 1, true);
LAST_EFFECT_SET_ALPHA(fighter, 0.4);
EFFECT_FOLLOW(fighter, Hash40::new("roy_sword_light"), Hash40::new("sword1"), 0, 0, 7, 0, 0, 0, 1, true);
LAST_EFFECT_SET_ALPHA(fighter, 0.4);
}
frame(lua_state, 19.0);
frame(lua_state, 21.0);
if is_excute(fighter) {
LANDING_EFFECT(fighter, Hash40::new("sys_atk_smoke"), Hash40::new("top"), 0, 0, 0, 0, 180, 0, 1, 0, 0, 0, 0, 0, 0, false);
}
Expand Down
Loading
Loading