mirror of
https://github.com/pret/pmd-sky.git
synced 2026-03-21 17:25:15 -05:00
Moved TYPE_MATCHUP_TABLE to C
This commit is contained in:
parent
f303fbba9d
commit
78ff1a2a8f
136
asm/include/overlay_10_022C5938.inc
Normal file
136
asm/include/overlay_10_022C5938.inc
Normal file
|
|
@ -0,0 +1,136 @@
|
|||
#pragma once
|
||||
.public DoMoveAbsorb
|
||||
.public DoMoveAttract
|
||||
.public DoMoveBeatUp
|
||||
.public DoMoveBlastBurn
|
||||
.public DoMoveBlazeKick
|
||||
.public DoMoveBlock
|
||||
.public DoMoveBlowback
|
||||
.public DoMoveBrickBreak
|
||||
.public DoMoveBrine
|
||||
.public DoMoveCaptivate
|
||||
.public DoMoveChargeBeam
|
||||
.public DoMoveCharm
|
||||
.public DoMoveCloseCombat
|
||||
.public DoMoveConfuse
|
||||
.public DoMoveCopycat
|
||||
.public DoMoveCrunch
|
||||
.public DoMoveCrushClaw
|
||||
.public DoMoveCurse
|
||||
.public DoMoveDamageBoostAllStats
|
||||
.public DoMoveDamageBurn10FlameWheel
|
||||
.public DoMoveDamageConfuse10
|
||||
.public DoMoveDamageConfuse30
|
||||
.public DoMoveDamageConstrict10
|
||||
.public DoMoveDamageCringe10
|
||||
.public DoMoveDamageCringe20
|
||||
.public DoMoveDamageCringe30
|
||||
.public DoMoveDamageDrain
|
||||
.public DoMoveDamageEatItem
|
||||
.public DoMoveDamageHpDependent
|
||||
.public DoMoveDamageLowerAccuracy40
|
||||
.public DoMoveDamageLowerSpecialDefense50
|
||||
.public DoMoveDamageLowerSpeed100
|
||||
.public DoMoveDamageLowerSpeed20
|
||||
.public DoMoveDamageMultihitFatigue
|
||||
.public DoMoveDamageParalyze10
|
||||
.public DoMoveDamageParalyze20
|
||||
.public DoMoveDamagePoison18
|
||||
.public DoMoveDamagePoison40
|
||||
.public DoMoveDamageStealItem
|
||||
.public DoMoveDamageWeightDependent
|
||||
.public DoMoveDamageWithRecoil
|
||||
.public DoMoveDamage__02325DC0
|
||||
.public DoMoveDamage__0232A500
|
||||
.public DoMoveDamage__0232B8B0
|
||||
.public DoMoveDamage__0232DD88
|
||||
.public DoMoveDefog
|
||||
.public DoMoveDestinyBond
|
||||
.public DoMoveDoubleEdge
|
||||
.public DoMoveDragonRage
|
||||
.public DoMoveDreamEater
|
||||
.public DoMoveDynamicPunch
|
||||
.public DoMoveEmbargo
|
||||
.public DoMoveEncore
|
||||
.public DoMoveEndeavor
|
||||
.public DoMoveEruption
|
||||
.public DoMoveFacade
|
||||
.public DoMoveFakeOut
|
||||
.public DoMoveFakeTears
|
||||
.public DoMoveFeatherDance
|
||||
.public DoMoveFeint
|
||||
.public DoMoveFireFang
|
||||
.public DoMoveFissure
|
||||
.public DoMoveFlareBlitz
|
||||
.public DoMoveFlatter
|
||||
.public DoMoveFrustration
|
||||
.public DoMoveGastroAcid
|
||||
.public DoMoveGuardSwap
|
||||
.public DoMoveGust
|
||||
.public DoMoveGyroBall
|
||||
.public DoMoveHammerArm
|
||||
.public DoMoveHeadSmash
|
||||
.public DoMoveHeadbutt
|
||||
.public DoMoveHeartSwap
|
||||
.public DoMoveHiddenPower
|
||||
.public DoMoveHornDrill
|
||||
.public DoMoveHurl
|
||||
.public DoMoveIceFang
|
||||
.public DoMoveIronTail
|
||||
.public DoMoveKnockOff
|
||||
.public DoMoveLastResort
|
||||
.public DoMoveLeechSeed
|
||||
.public DoMoveLowerAccuracy1
|
||||
.public DoMoveLowerDefense1
|
||||
.public DoMoveLowerSpeed1
|
||||
.public DoMoveMagnitude
|
||||
.public DoMoveMetalSound
|
||||
.public DoMoveMiracleEye
|
||||
.public DoMoveMistBall
|
||||
.public DoMoveMudSlap
|
||||
.public DoMoveNaturalGift
|
||||
.public DoMoveNightmare
|
||||
.public DoMoveOhko
|
||||
.public DoMovePainSplit
|
||||
.public DoMoveParalyze__02326E80
|
||||
.public DoMoveParalyze__0232B434
|
||||
.public DoMovePause
|
||||
.public DoMovePayDay
|
||||
.public DoMovePoison
|
||||
.public DoMovePoisonFang
|
||||
.public DoMovePoisonTail
|
||||
.public DoMovePowerSwap
|
||||
.public DoMovePresent
|
||||
.public DoMovePsychoShift
|
||||
.public DoMoveRapidSpin
|
||||
.public DoMoveReturn
|
||||
.public DoMoveReversal
|
||||
.public DoMoveRolePlay
|
||||
.public DoMoveSacredFire
|
||||
.public DoMoveSecretPower
|
||||
.public DoMoveSeismicToss
|
||||
.public DoMoveSkillSwap
|
||||
.public DoMoveSmellingSalt
|
||||
.public DoMoveSmokescreen
|
||||
.public DoMoveSpite
|
||||
.public DoMoveSuperFang
|
||||
.public DoMoveSuperpower
|
||||
.public DoMoveSwagger
|
||||
.public DoMoveSwapItems
|
||||
.public DoMoveTaunt
|
||||
.public DoMoveThunderFang
|
||||
.public DoMoveThunderWave
|
||||
.public DoMoveThundershock
|
||||
.public DoMoveTickle
|
||||
.public DoMoveTorment
|
||||
.public DoMoveToxic
|
||||
.public DoMoveTriAttack
|
||||
.public DoMoveTripleKick
|
||||
.public DoMoveTrumpCard
|
||||
.public DoMoveTwineedle
|
||||
.public DoMoveTwister
|
||||
.public DoMoveWakeUpSlap
|
||||
.public DoMoveWhirlpool
|
||||
.public DoMoveWillOWisp
|
||||
.public DoMoveWrap
|
||||
.public DoMoveYawn
|
||||
|
|
@ -1,136 +1 @@
|
|||
#pragma once
|
||||
.public DoMoveAbsorb
|
||||
.public DoMoveAttract
|
||||
.public DoMoveBeatUp
|
||||
.public DoMoveBlastBurn
|
||||
.public DoMoveBlazeKick
|
||||
.public DoMoveBlock
|
||||
.public DoMoveBlowback
|
||||
.public DoMoveBrickBreak
|
||||
.public DoMoveBrine
|
||||
.public DoMoveCaptivate
|
||||
.public DoMoveChargeBeam
|
||||
.public DoMoveCharm
|
||||
.public DoMoveCloseCombat
|
||||
.public DoMoveConfuse
|
||||
.public DoMoveCopycat
|
||||
.public DoMoveCrunch
|
||||
.public DoMoveCrushClaw
|
||||
.public DoMoveCurse
|
||||
.public DoMoveDamage__02325DC0
|
||||
.public DoMoveDamage__0232A500
|
||||
.public DoMoveDamage__0232B8B0
|
||||
.public DoMoveDamage__0232DD88
|
||||
.public DoMoveDamageBoostAllStats
|
||||
.public DoMoveDamageBurn10FlameWheel
|
||||
.public DoMoveDamageConfuse10
|
||||
.public DoMoveDamageConfuse30
|
||||
.public DoMoveDamageConstrict10
|
||||
.public DoMoveDamageCringe10
|
||||
.public DoMoveDamageCringe20
|
||||
.public DoMoveDamageCringe30
|
||||
.public DoMoveDamageDrain
|
||||
.public DoMoveDamageEatItem
|
||||
.public DoMoveDamageHpDependent
|
||||
.public DoMoveDamageLowerAccuracy40
|
||||
.public DoMoveDamageLowerSpecialDefense50
|
||||
.public DoMoveDamageLowerSpeed100
|
||||
.public DoMoveDamageLowerSpeed20
|
||||
.public DoMoveDamageMultihitFatigue
|
||||
.public DoMoveDamageParalyze10
|
||||
.public DoMoveDamageParalyze20
|
||||
.public DoMoveDamagePoison18
|
||||
.public DoMoveDamagePoison40
|
||||
.public DoMoveDamageStealItem
|
||||
.public DoMoveDamageWeightDependent
|
||||
.public DoMoveDamageWithRecoil
|
||||
.public DoMoveDefog
|
||||
.public DoMoveDestinyBond
|
||||
.public DoMoveDoubleEdge
|
||||
.public DoMoveDragonRage
|
||||
.public DoMoveDreamEater
|
||||
.public DoMoveDynamicPunch
|
||||
.public DoMoveEmbargo
|
||||
.public DoMoveEncore
|
||||
.public DoMoveEndeavor
|
||||
.public DoMoveEruption
|
||||
.public DoMoveFacade
|
||||
.public DoMoveFakeOut
|
||||
.public DoMoveFakeTears
|
||||
.public DoMoveFeatherDance
|
||||
.public DoMoveFeint
|
||||
.public DoMoveFireFang
|
||||
.public DoMoveFissure
|
||||
.public DoMoveFlareBlitz
|
||||
.public DoMoveFlatter
|
||||
.public DoMoveFrustration
|
||||
.public DoMoveGastroAcid
|
||||
.public DoMoveGuardSwap
|
||||
.public DoMoveGust
|
||||
.public DoMoveGyroBall
|
||||
.public DoMoveHammerArm
|
||||
.public DoMoveHeadbutt
|
||||
.public DoMoveHeadSmash
|
||||
.public DoMoveHeartSwap
|
||||
.public DoMoveHiddenPower
|
||||
.public DoMoveHornDrill
|
||||
.public DoMoveHurl
|
||||
.public DoMoveIceFang
|
||||
.public DoMoveIronTail
|
||||
.public DoMoveKnockOff
|
||||
.public DoMoveLastResort
|
||||
.public DoMoveLeechSeed
|
||||
.public DoMoveLowerAccuracy1
|
||||
.public DoMoveLowerDefense1
|
||||
.public DoMoveLowerSpeed1
|
||||
.public DoMoveMagnitude
|
||||
.public DoMoveMetalSound
|
||||
.public DoMoveMiracleEye
|
||||
.public DoMoveMistBall
|
||||
.public DoMoveMudSlap
|
||||
.public DoMoveNaturalGift
|
||||
.public DoMoveNightmare
|
||||
.public DoMoveOhko
|
||||
.public DoMovePainSplit
|
||||
.public DoMoveParalyze__02326E80
|
||||
.public DoMoveParalyze__0232B434
|
||||
.public DoMovePause
|
||||
.public DoMovePayDay
|
||||
.public DoMovePoison
|
||||
.public DoMovePoisonFang
|
||||
.public DoMovePoisonTail
|
||||
.public DoMovePowerSwap
|
||||
.public DoMovePresent
|
||||
.public DoMovePsychoShift
|
||||
.public DoMoveRapidSpin
|
||||
.public DoMoveReturn
|
||||
.public DoMoveReversal
|
||||
.public DoMoveRolePlay
|
||||
.public DoMoveSacredFire
|
||||
.public DoMoveSecretPower
|
||||
.public DoMoveSeismicToss
|
||||
.public DoMoveSkillSwap
|
||||
.public DoMoveSmellingSalt
|
||||
.public DoMoveSmokescreen
|
||||
.public DoMoveSpite
|
||||
.public DoMoveSuperFang
|
||||
.public DoMoveSuperpower
|
||||
.public DoMoveSwagger
|
||||
.public DoMoveSwapItems
|
||||
.public DoMoveTaunt
|
||||
.public DoMoveThunderFang
|
||||
.public DoMoveThundershock
|
||||
.public DoMoveThunderWave
|
||||
.public DoMoveTickle
|
||||
.public DoMoveTorment
|
||||
.public DoMoveToxic
|
||||
.public DoMoveTriAttack
|
||||
.public DoMoveTripleKick
|
||||
.public DoMoveTrumpCard
|
||||
.public DoMoveTwineedle
|
||||
.public DoMoveTwister
|
||||
.public DoMoveWakeUpSlap
|
||||
.public DoMoveWhirlpool
|
||||
.public DoMoveWillOWisp
|
||||
.public DoMoveWrap
|
||||
.public DoMoveYawn
|
||||
|
|
|
|||
6261
asm/overlay_10_022C5938.s
Normal file
6261
asm/overlay_10_022C5938.s
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -1,6 +1,7 @@
|
|||
#ifndef PMDSKY_DUNGEON_PARAMETERS_H
|
||||
#define PMDSKY_DUNGEON_PARAMETERS_H
|
||||
|
||||
// The percentage chance of the AI not attacking when it is confused.
|
||||
extern const s16 AI_CONFUSED_NO_ATTACK_CHANCE;
|
||||
|
||||
#endif //PMDSKY_DUNGEON_PARAMETERS_H
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
#ifndef PMDSKY_DUNGEON_PARAMETERS_1_H
|
||||
#define PMDSKY_DUNGEON_PARAMETERS_1_H
|
||||
|
||||
// The chance of the Chatot Scarf bouncing back a move, as a percentage (20%).
|
||||
extern const s16 CHATOT_SCARF_BOUNCE_CHANCE;
|
||||
|
||||
#endif //PMDSKY_DUNGEON_PARAMETERS_1_H
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@
|
|||
|
||||
#include "enums.h"
|
||||
|
||||
// Maps each weather type (by index, see enum weather_id) to the corresponding Weather Ball type.
|
||||
extern const enum type_id WEATHER_BALL_TYPE_TABLE[8];
|
||||
|
||||
#endif //PMDSKY_DUNGEON_PARAMETERS_1_H
|
||||
|
|
|
|||
|
|
@ -3,17 +3,6 @@
|
|||
|
||||
#include "dungeon_mode.h"
|
||||
|
||||
// Type matchup table, not including TYPE_NEUTRAL.
|
||||
// Note that Ghost's immunities seem to be hard-coded elsewhere. In this table, both Normal and
|
||||
// Fighting are encoded as neutral against Ghost.
|
||||
//
|
||||
// Row index corresponds to the attack type and the column index corresponds to the defender type.
|
||||
// C-style access: type_matchup_table[attack_type][target_type] or
|
||||
// *(&type_matchup_table[0][0] + attack_type*18 + target_type)
|
||||
struct type_matchup_table {
|
||||
s16 matchups[NUM_TYPES][NUM_TYPES];
|
||||
};
|
||||
|
||||
s16 GetTypeMatchup(struct entity *attacker, struct entity *defender, s16 target_type_idx, enum type_id attack_type);
|
||||
|
||||
#endif //PMDSKY_TYPE_EFFECTIVENESS_H
|
||||
|
|
|
|||
18
include/type_matchup_table.h
Normal file
18
include/type_matchup_table.h
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
#ifndef PMDSKY_TYPE_MATCHUP_TABLE_H
|
||||
#define PMDSKY_TYPE_MATCHUP_TABLE_H
|
||||
|
||||
#include "enums.h"
|
||||
|
||||
// Type matchup table, not including TYPE_NEUTRAL.
|
||||
// Note that Ghost's immunities seem to be hard-coded elsewhere. In this table, both Normal and
|
||||
// Fighting are encoded as neutral against Ghost.
|
||||
// Row index corresponds to the attack type and the column index corresponds to the defender type.
|
||||
struct type_matchup_table {
|
||||
s16 matchups[NUM_TYPES][NUM_TYPES];
|
||||
};
|
||||
|
||||
// Table of type matchups.
|
||||
// Each row corresponds to the type matchups of a specific attack type, with each entry within the row specifying the type's effectiveness against a target type.
|
||||
extern const struct type_matchup_table TYPE_MATCHUP_TABLE;
|
||||
|
||||
#endif //PMDSKY_TYPE_MATCHUP_TABLE_H
|
||||
2
main.lsf
2
main.lsf
|
|
@ -221,6 +221,8 @@ Overlay OVY_10
|
|||
Object asm/overlay_10_rodata_022C490C.o
|
||||
Object src/natural_gift_data.o
|
||||
Object asm/overlay_10_rodata_022C593C.o
|
||||
Object src/type_matchup_table.o
|
||||
Object asm/overlay_10_022C5938.o
|
||||
}
|
||||
Overlay OVY_11
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
#include "dungeon_parameters.h"
|
||||
#include "dungeon_parameters_1.h"
|
||||
|
||||
const s16 CHATOT_SCARF_BOUNCE_CHANCE = 20;
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
#include "dungeon_parameters_2.h"
|
||||
|
||||
const enum type_id WEATHER_BALL_TYPE_TABLE[8] = {
|
||||
TYPE_NORMAL,
|
||||
TYPE_FIRE,
|
||||
TYPE_ROCK,
|
||||
TYPE_NORMAL,
|
||||
TYPE_WATER,
|
||||
TYPE_ICE,
|
||||
TYPE_NORMAL,
|
||||
TYPE_ICE
|
||||
TYPE_NORMAL, // WEATHER_CLEAR
|
||||
TYPE_FIRE, // WEATHER_SUNNY
|
||||
TYPE_ROCK, // WEATHER_SANDSTORM
|
||||
TYPE_NORMAL, // WEATHER_CLOUDY
|
||||
TYPE_WATER, // WEATHER_RAIN
|
||||
TYPE_ICE, // WEATHER_HAIL
|
||||
TYPE_NORMAL, // WEATHER_FOG
|
||||
TYPE_ICE // WEATHER_SNOW
|
||||
};
|
||||
|
|
|
|||
|
|
@ -3,8 +3,7 @@
|
|||
#include "overlay_29_0230A994.h"
|
||||
#include "overlay_29_02318A4C.h"
|
||||
#include "overlay_29_02338390.h"
|
||||
|
||||
extern struct type_matchup_table TYPE_MATCHUP_TABLE;
|
||||
#include "type_matchup_table.h"
|
||||
|
||||
s16 GetTypeMatchup(struct entity *attacker, struct entity *defender, s16 target_type_idx, enum type_id attack_type)
|
||||
{
|
||||
|
|
|
|||
31
src/type_matchup_table.c
Normal file
31
src/type_matchup_table.c
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
#include "type_matchup_table.h"
|
||||
|
||||
// Type chart
|
||||
#define IMMUNE MATCHUP_IMMUNE
|
||||
#define RESIST MATCHUP_NOT_VERY_EFFECTIVE
|
||||
#define NEUTRAL MATCHUP_NEUTRAL
|
||||
#define SUPER MATCHUP_SUPER_EFFECTIVE
|
||||
|
||||
const struct type_matchup_table TYPE_MATCHUP_TABLE = {
|
||||
{
|
||||
// NONE NORMAL FIRE WATER GRASS ELECTRIC ICE FIGHTING POISON GROUND FLYING PSYCHIC BUG ROCK GHOST DRAGON DARK STEEL
|
||||
[TYPE_NONE] = {NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL},
|
||||
[TYPE_NORMAL] = {NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, RESIST, NEUTRAL, NEUTRAL, NEUTRAL, RESIST},
|
||||
[TYPE_FIRE] = {NEUTRAL, NEUTRAL, RESIST, RESIST, SUPER, NEUTRAL, SUPER, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, SUPER, RESIST, NEUTRAL, RESIST, NEUTRAL, SUPER},
|
||||
[TYPE_WATER] = {NEUTRAL, NEUTRAL, SUPER, RESIST, RESIST, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, SUPER, NEUTRAL, NEUTRAL, NEUTRAL, SUPER, NEUTRAL, RESIST, NEUTRAL, NEUTRAL},
|
||||
[TYPE_GRASS] = {NEUTRAL, NEUTRAL, RESIST, SUPER, RESIST, NEUTRAL, NEUTRAL, NEUTRAL, RESIST, SUPER, RESIST, NEUTRAL, RESIST, SUPER, NEUTRAL, RESIST, NEUTRAL, RESIST},
|
||||
[TYPE_ELECTRIC] = {NEUTRAL, NEUTRAL, NEUTRAL, SUPER, RESIST, RESIST, NEUTRAL, NEUTRAL, NEUTRAL, IMMUNE, SUPER, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, RESIST, NEUTRAL, NEUTRAL},
|
||||
[TYPE_ICE] = {NEUTRAL, NEUTRAL, RESIST, RESIST, SUPER, NEUTRAL, RESIST, NEUTRAL, NEUTRAL, SUPER, SUPER, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, SUPER, NEUTRAL, RESIST},
|
||||
[TYPE_FIGHTING] = {NEUTRAL, SUPER, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, SUPER, NEUTRAL, RESIST, NEUTRAL, RESIST, RESIST, RESIST, SUPER, NEUTRAL, NEUTRAL, SUPER, SUPER},
|
||||
[TYPE_POISON] = {NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, SUPER, NEUTRAL, NEUTRAL, NEUTRAL, RESIST, RESIST, NEUTRAL, NEUTRAL, NEUTRAL, RESIST, RESIST, NEUTRAL, NEUTRAL, IMMUNE},
|
||||
[TYPE_GROUND] = {NEUTRAL, NEUTRAL, SUPER, NEUTRAL, RESIST, SUPER, NEUTRAL, NEUTRAL, SUPER, NEUTRAL, IMMUNE, NEUTRAL, RESIST, SUPER, NEUTRAL, NEUTRAL, NEUTRAL, SUPER},
|
||||
[TYPE_FLYING] = {NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, SUPER, RESIST, NEUTRAL, SUPER, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, SUPER, RESIST, NEUTRAL, NEUTRAL, NEUTRAL, RESIST},
|
||||
[TYPE_PSYCHIC] = {NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, SUPER, SUPER, NEUTRAL, NEUTRAL, RESIST, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, IMMUNE, RESIST},
|
||||
[TYPE_BUG] = {NEUTRAL, NEUTRAL, RESIST, NEUTRAL, SUPER, NEUTRAL, NEUTRAL, RESIST, RESIST, NEUTRAL, RESIST, SUPER, NEUTRAL, NEUTRAL, RESIST, NEUTRAL, SUPER, RESIST},
|
||||
[TYPE_ROCK] = {NEUTRAL, NEUTRAL, SUPER, NEUTRAL, NEUTRAL, NEUTRAL, SUPER, RESIST, NEUTRAL, RESIST, SUPER, NEUTRAL, SUPER, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, RESIST},
|
||||
[TYPE_GHOST] = {NEUTRAL, IMMUNE, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, SUPER, NEUTRAL, NEUTRAL, SUPER, NEUTRAL, RESIST, RESIST},
|
||||
[TYPE_DRAGON] = {NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, SUPER, NEUTRAL, RESIST},
|
||||
[TYPE_DARK] = {NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, RESIST, NEUTRAL, NEUTRAL, NEUTRAL, SUPER, NEUTRAL, NEUTRAL, SUPER, NEUTRAL, RESIST, RESIST},
|
||||
[TYPE_STEEL] = {NEUTRAL, NEUTRAL, RESIST, RESIST, NEUTRAL, RESIST, SUPER, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, NEUTRAL, SUPER, NEUTRAL, NEUTRAL, NEUTRAL, RESIST}
|
||||
}
|
||||
};
|
||||
|
|
@ -11,11 +11,13 @@ parser = argparse.ArgumentParser()
|
|||
|
||||
parser.add_argument('asm_file')
|
||||
parser.add_argument('split_symbol_name')
|
||||
parser.add_argument('-f', '--split_file_name')
|
||||
|
||||
args = parser.parse_args()
|
||||
|
||||
symbol_location = args.asm_file
|
||||
symbol_name = args.split_symbol_name
|
||||
split_file_name = args.split_file_name
|
||||
|
||||
if symbol_location.endswith('.s'):
|
||||
symbol_location = symbol_location[:-2]
|
||||
|
|
@ -62,7 +64,10 @@ LSF_FILE_PATH = 'main.lsf'
|
|||
with open(LSF_FILE_PATH, 'r') as lsf_file:
|
||||
lsf_lines = lsf_file.readlines()
|
||||
|
||||
new_asm_base_name = f"{file_prefix}{data_type}_{new_symbol_address}"
|
||||
if split_file_name is None:
|
||||
new_asm_base_name = f"{file_prefix}{data_type}_{new_symbol_address}"
|
||||
else:
|
||||
new_asm_base_name = split_file_name
|
||||
|
||||
# If needed, add the extracted function's new .o file to main.lsf.
|
||||
merge_prev_file = None
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user