Documentation
¶
Index ¶
- func Load(filesPath string, shn interface{}) error
- func SHBDToImage(s *SHBD) (*image.RGBA, error)
- func SaveBmpFile(img *image.RGBA, path, fileName string) error
- func SaveSHBDFile(s *SHBD, path, fileName string) error
- func ValidPath(path string) (string, error)
- type AbState
- type AbStateIndex
- type AbStateSaveTypeEnum
- type ArmorTypeEnum
- type Attributes
- type AuctionGroup
- type ChargedEffect
- type DispelAttr
- type EBelongType
- type EffectEnumerate
- type EnemyDetect
- type FileDependency
- type Files
- type GradeItemOption
- type GradeType
- type ISEType
- type Identifiers
- type ItemClassEnum
- type ItemData
- type ItemEquipEnum
- type ItemFuncEnum
- type ItemInfo
- type ItemInfoServer
- type ItemTypeEnum
- type Map
- type MapData
- type MapInfo
- type MiniHouse
- type MobGradeType
- type MobInfo
- type MobInfoServer
- type MobKillType
- type MobRace
- type MobType
- type MonsterData
- type MonsterRegenTable
- type NpcData
- type RandomOption
- type RandomOptionCount
- type RandomOptionType
- type RegenEntry
- type RegenEntryMob
- type SHBD
- type ShineAbState
- type ShineChargedEffect
- type ShineColumn
- type ShineDataMode
- type ShineDataType
- type ShineGradeItemOption
- type ShineItemInfo
- type ShineItemInfoServer
- type ShineMapInfo
- type ShineMiniHouse
- type ShineMobInfo
- type ShineMobInfoServer
- type ShineNPC
- type ShinePortal
- type ShineRandomOption
- type ShineRandomOptionCount
- type ShineRawFile
- type SubDispelAttr
- type UseClassType
- type VendorGrid
- type VendorItems
- type VendorTab
- type WMLink
- type WeaponTypeEnum
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func SaveBmpFile ¶
SaveBmpFile for debugging purposes
func SaveSHBDFile ¶
SaveSHBDFile for debugging purposes
Types ¶
type AbState ¶
type AbState struct {
ID uint16
InxName string `struct:"[32]byte"`
AbStateIndex AbStateIndex
KeepTimeRatio uint32
KeepTimePower byte
StateGrade byte
PartyState1 string `struct:"[32]byte"`
PartyState2 string `struct:"[32]byte"`
PartyState3 string `struct:"[32]byte"`
PartyState4 string `struct:"[32]byte"`
PartyState5 string `struct:"[32]byte"`
PartyRange uint32
PartyEnchantNumber uint32
SubAbState string `struct:"[32]byte"`
DispelInx DispelAttr
SubDispelAttr SubDispelAttr
AbStateSaveType AbStateSaveTypeEnum
MainStateInx string `struct:"[32]byte"`
Duplicate byte
// contains filtered or unexported fields
}
type AbStateIndex ¶
type AbStateIndex uint32
const ( StaSeverBone AbStateIndex = iota StaRedSlash StaBattleBlowStun StaMightySoulMain StaMightySoul StaMoraleDecreaseWc StaSpeedShield StaHarmDefect StaBerserkFrenzy StaShockBladeStun StaMightySoul2 StaMightySoul3 StaMightySoul4 StaMightySoul5 StaViolence StaBuckler StaNeglect StaBreak StaBlessingMain StaBlessing StaSafeProtection StaPsychicBluntStun StaPsychicChopBlood StaDarknessProtection StaRestore StaHitProtection StaMentalShoutMain StaMentalShout StaDivineShield StaDivineWeaponWcMain StaDivineWeaponWc StaSacrifice StaCrossCastingCoolTime StaPanicForceMr StaReverseOrder StaHorrorForceStr StaBlessing2 StaBlessing3 StaBlessing4 StaBlessing5 StaMentalShout2 StaMentalShout3 StaMentalShout4 StaMentalShout5 StaDivineWeaponWc2 StaDivineWeaponWc3 StaDivineWeaponWc4 StaDivineWeaponWc5 StaRebirth StaDeadlyBlessing StaDodge StaFuryImpactStun StaForestWind StaWindChargeMain StaWindCharge StaBoneArrow StaSpiritThornEntangle // ooof x.x i wonder if i should respect golang conventions StaPoisonshot StaBiteArrow StaMistChargeMain StaMistCharge StaSpiritFog StaHawkTalonAtkSpeed StaNaturecastingcooltime StaPiercingguard StaShockscreamwc StaStingeruptionslow StaWindcharge2 StaWindcharge3 StaWindCharge4 StaWindCharge5 StaMistCharge2 StaMistCharge3 StaMistCharge4 StaMistCharge5 StaHide StaBlind StaEntraphide StaIcebolt StaLightningbolt StaBlur StaSoulEdge STA_RINGSHIELD STA_ICEBLASTSTUN STA_CHAINLIGHTNINGSTUN STA_DRAINMINDFEAR STA_CHAINCASTINGCOOLTIME STA_CURSEMAGICCASTIME STA_FROSTNOVA STA_THUNDERBOLT STA_SOULEDGEMAIN STA_SOULEDGE2 STA_SOULEDGE3 STA_SOULEDGE4 STA_SOULEDGE5 STA_DEEPER STA_MESMERIZE STA_POLYMORPH STA_ICEFIELD STA_MARASTUN STA_KINGSLIMEBLOODING STA_MARLONEENTANGLE STA_NOXENTANGLE STA_SKELKNIGHTBLOODING STA_ROBOACPLUS STA_GOKINGSTUN STA_GOKINGSTRRATE STA_KINGCALLACPLUS STA_GHKNIGHTENTANGLE STA_HUNGRYWOLFBLOODING STA_KQSKELKNIGHTENTANGLE STA_MARLONECAPTAINATKSPD STA_ARCHMAGEBOOKSTUN STA_GHOSTFEAR STA_KQ_BOSSROBOFEAR STA_KQ_BOSSROBO2FEAR STA_NOXSK2BLOODING STA_KQ_G_TBRAIDERCURSE STA_ELFKNIGHTSOULDEXCURSE STA_JOKERTRUMPYTHCURSE STA_KEBINGCURSE STA_KINGCRABCURSE STA_NAVARCURSE STA_MARACURSE STA_SKELWARRIORCURSE STA_ARCHMAGEBOOKCURSE STA_KARATEMPLERCURSE STA_SMARTPHINOCURSE STA_MARLONESOLDIERCURSE STA_OLDFOXCURSE STA_GOBLINMAGECURSE STA_HARKANCURSE STA_DISHARKANCURSE STA_STONIECURSE STA_OGRECURSE STA_MARASAILORCURSE STA_OLDARCHONCURSE STA_KINGMUSHROOMCURSE STA_BCTRUMPYCURSE STA_KQ_K_BOSSPHINOCURSE STA_KQ_K_PHINOFLIECURSE STA_TORTURERBLOODING STA_SHARPBOARBLOODING STA_FOBLOODING STA_BABYWEREBEARBLOODING STA_SENIORTORTURERBLOODING STA_JEWELKEEPERBLOODING STA_SHYLPHBLOODING STA_SGTRUMPYBLOODING STA_KQ_K_SOLIDERBLOODING STA_SKELKNIGHTDISEASE STA_MOB1SLOW STA_MOB2SLOW STA_MOB3SLOW STA_MOB4SLOW STA_MOB5SLOW STA_MOB1STUN STA_MOB2STUN STA_MOB3STUN STA_MOB4STUN STA_MOB5STUN STA_KQMARASTUN STA_KQGOBLEKINGSTUN STA_DIAMASTERSTUN STA_ANCIENTSTONIESTUN STA_MOB1ENTANGLE STA_MOB2ENTANGLE STA_MOB3ENTANGLE STA_MOB4ENTANGLE STA_MOB5ENTANGLE STA_KQMARLONEENTANGLE STA_LEGENDARYTREEENTANGLE STA_GIANTELVENTREEENTANGLE STA_MOB1POISON STA_MOB2POISON STA_MOB3POISON STA_MOB4POISON STA_MOB5POISON STA_MOB6POISON STA_DIATRUMPYPOISON STA_MOB1DISEASE1 STA_MOB2DISEASE1 STA_MOB3DISEASE1 STA_MOB4DISEASE1 STA_MOB5DISEASE1 STA_MOB6DISEASE1 STA_MOB1DISEASE2 STA_MOB2DISEASE2 STA_MOB3DISEASE2 STA_MOB4DISEASE2 STA_MOB5DISEASE2 STA_MOB6DISEASE2 STA_MOB1DISEASE3 STA_MOB2DISEASE3 STA_MOB3DISEASE3 STA_MOB4DISEASE3 STA_MOB5DISEASE3 STA_MOB6DISEASE3 STA_MOBIMMORTAL STA_MOBINVISIBLE STA_MOBMRPLUS STA_ACMODE STA_MRMODE STA_HELGAACMINUS STA_BESTLOWCONHPPOTION STA_LOWCONHPPOTION STA_NORCONHPPOTION STA_HIGHCONHPPOTION STA_BESTHIGHCONHPPOTION STA_BESTLOWCONSPPOTION STA_LOWCONSPPOTION STA_NORCONSPPOTION STA_HIGHCONSPPOTION STA_BESTHIGHCONSPPOTION STA_BESTLOWTHSCROLL STA_LOWTHSCROLL STA_NORTHSCROLL STA_HIGHTHSCROLL STA_BESTHIGHTHSCROLL STA_BESTLOWTBSCROLL STA_LOWTBSCROLL STA_NORTBSCROLL STA_HIGHTBSCROLL STA_BESTHIGHTBSCROLL STA_BESTLOWMRSCROLL STA_LOWMRSCROLL STA_NORMRSCROLL STA_HIGHMRSCROLL STA_BESTHIGHMRSCROLL STA_BESTLOWACSCROLL STA_LOWACSCROLL STA_NORACSCROLL STA_HIGHACSCROLL STA_BESTHIGHACSCROLL STA_BESTLOWCRISCROLL STA_LOWCRISCROLL STA_NORCRISCROLL STA_HIGHCRISCROLL STA_BESTHIGHCRISCROLL STA_BESTLOWMAXHPSCROLL STA_LOWMAXHPSCROLL STA_NORMAXHPSCROLL STA_HIGHMAXHPSCROLL STA_BESTHIGHMAXHPSCROLL STA_BESTLOWMAXSPSCROLL STA_LOWMAXSPSCROLL STA_NORMAXSPSCROLL STA_HIGHMAXSPSCROLL STA_BESTHIGHMAXSPSCROLL STA_BESTLOWSTRCRISCROLL STA_LOWSTRCRISCROLL STA_NORSTRCRISCROLL STA_HIGHSTRCRISCROLL STA_BESTHIGHSTRCRISCROLL STA_BESTLOWDEXSCROLL STA_LOWDEXSCROLL STA_NORDEXSCROLL STA_HIGHDEXSCROLL STA_BESTHIGHDEXSCROLL STA_BESTLOWACMRSCROLL STA_LOWACMRSCROLL STA_NORACMRSCROLL STA_HIGHACMRSCROLL STA_BESTHIGHACMRSCROLL STA_NORMSSCROLL STA_LOWPSNRESIPOTION STA_NORPSNRESIPOTION STA_HIGHPSNRESIPOTION STA_LOWDSSRESIPOTION STA_NORDSSRESIPOTION STA_HIGHDSSRESIPOTION STA_LOWCURRESIPOTION STA_NORCURRESIPOTION STA_HIGHCURRESIPOTION STA_ALLCURRESIPOTION STA_ALLDSSRESIPOTION STA_ALLPSNRESIPOTION STA_LOWMSSCROLL STA_HIGHMSSCROLL STA_BESTMSSCROLL STA_BESTLOWMSSCROLL STA_RAMAPOTION01 STA_RAMAPOTION02 STA_RAMAPOTION03 STA_RAMAPOTION04 STA_RAMAPOTION05 STA_RAMAPOTION06 STA_RAMAPOTION07 STA_GMHIDEMODE STA_OBSERVERHIDEMODE STA_QUESTENTANGLE STA_IMMORTAL STA_KEEPFROMCHAT STA_WEDDINGBUFF STA_WEDDINGSUB01 STA_WEDDINGSUB02 STA_SOLEFIRE STA_ACAMSBUF10PMAIN STA_ACAMSBUF10P STA_ACAMSBUF7PMAIN STA_ACAMSBUF7P STA_ACAGENALBUF STA_NATURALENEMY STA_KALBANPOISON STA_KALBANDISEASE STA_KALBANSTUN STA_COMMONSTUN01 STA_COMMONSTUN02 STA_COMMONSTUN03 STA_COMMONSTUN04 STA_COMMONSTUN05 STA_COMMONSTUN06 STA_COMMONSTUN07 STA_COMMONSTUN08 STA_COMMONSTUN09 STA_COMMONSTUN10 STA_COMMONFEAR01 STA_COMMONFEAR02 STA_COMMONFEAR03 STA_COMMONFEAR04 STA_COMMONFEAR05 STA_COMMONFEAR06 STA_COMMONFEAR07 STA_COMMONFEAR08 STA_COMMONFEAR09 STA_COMMONFEAR10 STA_ETHEREAL STA_GLDRESTORE STA_GLDMOVESPEEDUP STA_GLDACMINUS STA_GLDSLOW STA_GLDSTUN STA_KARENDOT STA_KARENDIVINE STA_KARENSTATIC STA_KARENCAPTIVATE STA_ROCKCANTHEAL STA_ROCKCANTCHAT STA_ROCKDASHSTUN STA_KARENDOTHEAL STA_KARENSTUN STA_MRMINUS STA_SILBERKBLOODING STA_BLOODFEAR STA_GLDATKUP STA_RESTEXP STA_KNOCKBACK STA_KNOCKBACKFLY STA_KNOCKBACKROLL STA_FATALKNOCKBACK STA_CANNOTCONTROL STA_EVENTHPUP STA_EVENTSPUP STA_EVENTALLSTATSUP STA_EVENTSPEED STA_EVENTACUP STA_EVENTMRUP STA_ANGRY STA_PARALYSIS STA_SPIRIT STA_TIMEATTACK STA_STAACREDDRAGON STA_STAMRBLUEDRAGON STA_TIMEATTACKMINI STA_MONKEYSTUN STA_MONKEYDEFENSE STA_GTIRATEPOINT STA_GTISPEED STA_GTIRESISTALL STA_GTIREFLECT STA_GTIBLIND STA_GTICONFUSION STA_GTIMETASLIME STA_GTIHIDE STA_GTISCAN STA_GTIBINDING STA_GTIBOMB1 STA_GTIBOMB2 STA_GTIBOMBDIE STA_GTIREVERSEORDER STA_GTIVIRUSRT STA_GTIVIRUSMOVE STA_GTIMOBSUICIDE STA_GTIKNOCKBACKROLL STA_CRACKERACDOWN STA_CRACKERWCDOWN STA_CRACKERDISEASE STA_CRACKERCURSE STA_CRACKERWCUPRATE STA_CRACKERACUPRATE STA_HUMARACDOWNRATE STA_BODYFORCE STA_CANNOTCHANGETARGET STA_SHADOWBINDING STA_SOULFREE STA_NORTHPOISON STA_FITBLOOD STA_FITMOVEDOWN STA_NORTFBURN STA_RANGEEVASIONUP STA_POISONDMGADD STA_POISONDMGDOWN STA_BLOODDMGDOWN STA_USESPADD STA_DOTDMGDOWN STA_EVASIONDOWN STA_SHOCKSTUN STA_DOTDMGADDALL STA_SHOCKRUN STA_KQSKELKNIGHTBLOODING STA_MOBBURNTYPE01 STA_MOBSTUNTYPE01 STA_VACANT STA_WOLFCLAWTBUPRATE STA_ENTRAPBLN STA_ENTRAPMSD STA_ENTRAPBLD STA_ENTRAPPLS STA_QUESTENTANGLE2 STA_GBGAMEMEMBERFULL STA_MULTIBLOOD STA_CHRTITLEWCUPRATE STA_CHRTITLEWCDOWNRATE STA_CHRTITLEMAUPRATE STA_CHRTITLEMADOWNRATE STA_CHRTITLEACUPRATE STA_CHRTITLEACDOWNRATE STA_CHRTITLEMRUPRATE STA_CHRTITLEMRDOWNRATE STA_CHRTITLEHPUPRATE STA_CHRTITLEHPDOWNRATE STA_CHRTITLEHPRESTORE STA_CHRTITLESPUPRATE STA_CHRTITLESPRESTORE STA_CHRTITLETHUPRATE STA_CHRTITLETHDOWNRATE STA_CHRTITLETBUPRATE STA_CHRTITLETBDOWNRATE STA_CHRTITLESPEEDUPRATE STA_CHRTITLESPEEDDOWNRATE STA_CHRTITLECRITICALUPRATE STA_CHRTITLEBLOODING STA_MOBAPU01 STA_BH_HELGA_NONE STA_HELGBALL STA_BH_KARATEMPLER_NONE STA_BH_HELGAAPU01 STA_BH_HELGADRT01 STA_BH_HELGA_IDLE01 STA_MOBACPLUS STA_MOBSTN01 STA_MOBPSN01 STA_MOBOPU01 STA_MOBMSD02 STA_MOBSLC01 STA_MOBBLD01 STA_MOBMTS01 STA_MOBBRN01 STA_MOBMSD01 STA_ADLUBAUP STA_ADLUBADOWN STA_BURNPAINME STA_BURNPAINFOE STA_GROUNDSTRIKE STA_BOMBSHOT STA_CROSSDROP STA_METEOR STA_MAGICDANCEUSESPDOWN STA_DEEPFEARMENDOWNRATE STA_MENDOWNRATE STA_SHAMECRIUP STA_MOBMRS01 STA_MOBACS01 STA_NOTTARGET STA_MAGICDANCEUSESPDOWN02 STA_MAGICDANCEUSESPDOWN03 STA_MAGICDANCEUSESPDOWN04 STA_MAGICDANCEUSESPDOWN05 STA_MENDOWNRATE02 STA_MENDOWNRATE03 STA_MENDOWNRATE04 STA_MENDOWNRATE05 STA_SHAMECRIUP02 STA_SHAMECRIUP03 STA_SHAMECRIUP04 STA_SHAMECRIUP05 STA_SNSATKUP STA_SNSCRIUP STA_SNSDEFENSEUP STA_SNSHPUP STA_SNSSPUP STA_SNSSPEEDUP STA_MULTIHEAL STA_HIDEWC STA_EGLACK04 STA_EGLACKMAD05 STA_SALARE04 STA_SALARE00 STA_ADLFLOUSSIER STA_ADLFLOUSSIERIMT STA_ADLFSTUN STA_EGLACKMAD04 STA_MINEICE STA_MINESTUN STA_MINEFIREVIVI STA_MINEICEVIVI STA_MINEREWARD STA_SETF2WCUP STA_SETF2ACUP STA_SETF4HPUP STA_SETF4ACDOWN STA_SETF4ACUP STA_SETF4WCUPRATE STA_SETF4ACUPRATE STA_SETA2WCUP STA_SETA4SPEEDUP STA_SETA4SPEEDDOWN STA_SETA4ATKSPEEDUP STA_SETM2MAUP STA_SETM2MRUP STA_SETM3SPUP STA_SETM4MAUP STA_SETM4MRDOWN STA_SETM4SPUP STA_SETM4MRUP STA_SETC2WCUP STA_SETC2MAUP STA_SETC3MRUP STA_SETC4MRUP STA_SETC4WCUP STA_SETC4ATKDOWN STA_SETC4ACUP STA_SETC4ACDOWN STA_SETC4MAUP STA_SETJ2WCUP STA_SETJ2HPUP STA_SETJ3SPUP STA_SETJ4ACDOWN STA_SETJ4ATKSPPEUP STA_SETJ4CRLUP STA_SETJ4WCUP STA_ENWCUP STA_ENMAUP STA_ENATKSPEED STA_ENWCRATE STA_ENADDDMGRATE STA_ENKNOCKBACKRATE STA_ENBINDINGRATE STA_ENMOVEDOWNRATE STA_QDAYWCUP STA_QDAYMAUP STA_QDAYEXPUP STA_QDAYDROPUP STA_SWICEWARN STA_SURPRISE STA_SWPLSWARN STA_SWSTNWARN STA_SWBRN01WARN STA_SWLVTWARN STA_AWAYBACKSPOT STA_RADIONBUFF STA_AIRIBUFF STA_WARLBRAINWASH STA_WARLBRN01 STA_STUNCANATTACK STA_TRANSFORM STA_BALLSNOW STA_SNOWMAN STA_WARNSETBUFF STA_SET_VALEN_STN STA_SET_VALEN_Heal STA_VALEN_REWARD STA_KQEGG_SPDW STA_KQEGG_REWARD STA_KQEGG_SPUP STA_KQSPRING_FEAR STA_KQSPRING_SLOW STA_KQ_SPUP_BUFF STA_KQ_SPIM_BUFF STA_KQ_SPUP_RATE_BUFF STA_KQSPRING_ARROW STA_WARHBRN01 STA_WARHBRN STA_STRONGER_RANGEATTACK STA_STRONGER_MELEEATTACK STA_FLAMINGBODY STA_COUNT30 STA_WARHWPNBRN STA_ORBATKRATEUP STA_RECOUP STA_LIGHTTOUCH STA_TREAT STA_LIGHTMARK STA_MINHP STA_MOONLIGHT STA_LPDOTPLUS STA_DMGSHIELD STA_DELCASTTIME STA_SETS2WCMAUP STA_SETS2ACMRUP STA_SETS4WCMAUP STA_SETS4ACMRUP STA_SENPARTYHPUPMAIN STA_SENPARTYHPUP STA_SENPARTYHPUP1 STA_SENEVENTEXPUP STA_SENEVENTDROPUP STA_PZL_HIDE STA_PZL_OCCUPY STA_PZL_REWARD_S STA_PZL_REWARD_H STA_PZL_REWARD_SH1 STA_PZL_REWARD_SH2 STA_ROUTMAGEATKUP STA_ARK_STN STA_ARK_BLD01 STA_ARK_BLD02 STA_ARK_BLD03 STA_ARK_BRN01 STA_ARK_BRN02 STA_ARK_BRN03 STA_ARK_THDOWN01 STA_ARK_THDOWN02 STA_KAHAL_STN STA_KAHAL_BLD STA_KAHAL_FEAR01 STA_KAHAL_FEAR02 STA_KAHAL_SHOUT STA_KAHAL_SPDDOWN STA_KAHAL_ICE STA_SIREN_STN1 STA_SIREN_STN2 STA_SIREN_NOMOVE STA_SIREN_KNOCKBACK1 STA_SIREN_KNOCKBACK2 STA_SIREN_HEAL STA_SIREN_LVT1 STA_SIREN_LVT2 STA_SIREN_BLD01 STA_SIREN_FEAR STA_SIREN_BLD02 STA_CONHPPOTION_T6 STA_CONSPPOTION_T6 STA_DEXPOTION_T6 STA_ACMRPOTION_T6 STA_STRCRIPOTION_T6 STA_PSNRESIPOTION_T6 STA_DSSRESIPOTION_T6 STA_CURRESIPOTION_T6 STA_THSCROLL_T6 STA_TBSCROLL_T6 STA_MRSCROLL_T6 STA_ACSCROLL_T6 STA_CRISCROLL_T6 STA_MAXHPSCROLL_T6 STA_MAXSPSCROLL_T6 STA_MSSCROLL_T6 STA_BERVALE_ICE01 STA_BERVALE_ICE02 STA_BERVALE_BLD01 STA_BERVALE_BLD02 STA_B_ALBI_BRN STA_B_ALBI_KNOCK STA_B_ALBI_STN STA_B_ALBI_FEAR STA_B_ALBI_DOT STA_B_ALBI_REFLECT STA_B_ALBI_ACMRUP STA_ADLFGCRAZY STA_FCITRIEDOT STA_LCWCMAUP STA_E_SLIME STA_E_HONEYING STA_E_PHINO STA_E_LIZARDMAN STA_E_KINGCRAB STA_E_SPARKDOG STA_E_LAVAVIVI STA_E_PHINOFLIE STA_E_MUSHROOM STA_E_SPIDER STA_E_B_CRACKERHUMAR STA_E_HELGA STA_EMP_STUN STA_EMP_KINGBLOODING STA_EMP_EMPBLOODING STA_EMP_LVT STA_LCACMRUP STA_E_FIREWORKS STA_ARENA_SPDUP STA_ARENA_STUN STA_ARENA_DRAGOUT STA_ARENA_DEFDW STA_ARENA_SPDDW STA_ARENA_ALLDW STA_ARENA_REWARD STA_ARENA_FLAG_RED STA_ARENA_FLAG_BLUE STA_ARENA_MINHP STA_X_ICE STA_X_SNOWMAN STA_X_REWARD01 STA_X_REWARD02 STA_X_REWARD03 STA_X_REWARD04 STA_E_SKI_ICE STA_E_SKI_SPEEDUP STA_E_SKI_REWARD STA_E_SKI_STUN STA_LAB_PURYIMPACTSTUN STA_C_PURYIMPACTSTUN STA_E_EGG2014_HOSHEMING STA_E_EGG2014_SELFREVIVE STA_E_EGG2014_EXPUP STA_E_EGG2014_DROPRATEUP STA_MOVERSTATUPSINGLE STA_MOVERSTATUPPARTY STA_MOVERSTATUP STA_KDSOCCER_SPEED_UP STA_KDSOCCER_INVINCIBLE STA_KQWATER_ARROW_BLUE STA_KQWATER_ARROW_RED STA_E_JACKO STA_E_KEBING STA_E_FORASCHIEF STA_E_H_WIN_SPEEDUP STA_E_H_WIN_SPEEDDOWN STA_ADLFLOUSSIER_H STA_E_USER_NEWBIE01 STA_E_USER_NEWBIE02 STA_E_USER_NEWBIE03 STA_E_USER_NEWBIE04 STA_E_USER_NEWBIE05 STA_E_USER_COMEBACK_MAIN01 STA_E_USER_COMEBACK_MAIN02 STA_E_USER_COMEBACK_MAIN03 STA_E_USER_COMEBACK_MAIN04 STA_E_USER_COMEBACK_MAIN05 STA_E_USER_COMEBACK01 STA_E_USER_COMEBACK02 STA_E_USER_COMEBACK03 STA_E_USER_COMEBACK04 STA_E_USER_COMEBACK05 STA_XMAS_STATUP STA_IDBUFF_100 STA_IDBUFF_80 STA_IDBUFF_60 STA_IDBUFF_40 STA_IDBUFF_20 STA_E_SNOWMANR STA_E_SNOWMANB STA_KDFARGELS_BLOOD01 STA_KDFARGELS_BLOOD02 STA_KDFARGELS_BLOOD03 STA_KDFARGELS_MRDOWNRATE STA_KDFARGELS_AIRBORNE STA_KDFARGELS_ACMRDOWN STA_KDFARGELS_DMGNEGLECT STA_KDFARGELS_DOTHEAL STA_SDVALE01_STN STA_SDVALE01_WHEEL STA_SDVALE01_SPDUP STA_SDVALE01_SPDDOWN STA_SDVALE01_BLIND STA_SDVALE01_PSN STA_SDVALE01_ICEFIELD STA_SDVALE01_BRN STA_SDVALE01_WCMAUP STA_SDVALE01_KNOCK STA_COSMUSAACRATE STA_COSMUSACRI STA_COSMUSAALLSTAT STA_BH_ALBI_REFLECT STA_BH_ALBI_ACMRUP STA_E_ZOMBIE STA_E_MARACREW STA_E_MARAELITE STA_E_MARASAILOR STA_E_PSYKEN STA_E_PSYKENDOG STA_E_MEGAN STA_E_YETI STA_E_IMP STA_E_ROBO STA_E_HOB STA_E_PINKY STA_E_WARH_DEVILDOM STA_E_ARKNOVICE STA_E_ARKTECH STA_E_MANDRAGORA STA_E_S_HAYREDDIN STA_E_MARA STA_BHKARENDOT STA_BHKARENDIVINE STA_BHKARENSTATIC STA_BHKARENCAPTIVATE STA_BHKARENDOTHEAL STA_BHKARENSTUN STA_BHKARENREF STA_GCGCAST STA_SCGATK STA_STONEATK STA_COLL_BLOOD STA_COLL_ACID STA_COLL_KNOCK_01 STA_COLL_AIRBORNE STA_COLL_STUN_01 STA_COLL_STUN_02 STA_COLL_FEAR STA_COLL_HEAL STA_COLL_STUN_03 STA_BLA_ACMDOWN STA_BLA_DOT STA_BLA_KNOCK STA_BLA_FEAR STA_BLA_LVT STA_BLA_STN STA_BLA_ACRATE STA_TGGUARDIANBALL STA_TGHAMMER STA_TGROAR STA_TGDOT MAX_ABSTATEINDEX )
noinspection ALL
type AbStateSaveTypeEnum ¶
type AbStateSaveTypeEnum uint32
const ( AstNone AbStateSaveTypeEnum = iota AstLinkLogoff AstLinkLogoffDie AstLinkDie MaxAbStateSaveTypeEnum )
type ArmorTypeEnum ¶
type ArmorTypeEnum uint32
const ( AtCloth ArmorTypeEnum = iota AtLeather AtScale AtPlate AtBone AtHardSkin AtWeakSkin AtBartSkin AtGelSkin AtFurSkin AtSpecial MaxArmorTypeEnum )
type Attributes ¶
type Attributes struct {
ID int `struct:"int32"`
MapInfoIndex string `struct:"[12]byte"`
ShineMapName string `struct:"[32]byte"`
SectorX int `struct:"int32"`
SectorY int `struct:"int32"`
IdleDuration int `struct:"int32"`
ScriptFile string `struct:"[64]byte"`
PKPoints bool `struct:"byte"`
HideName bool `struct:"byte"`
TeleportTo bool `struct:"byte"`
TeleportFrom bool `struct:"byte"`
RegenMapIndex string `struct:"[12]byte"`
RegenXA int `struct:"int32"`
RegenYA int `struct:"int32"`
RegenXB int `struct:"int32"`
RegenYB int `struct:"int32"`
RegenXC int `struct:"int32"`
RegenYC int `struct:"int32"`
RegenXD int `struct:"int32"`
RegenYD int `struct:"int32"`
RegenSpots int `struct:"int8"`
CanTrade bool `struct:"byte"`
CanRest bool `struct:"byte"`
UseItem bool `struct:"byte"`
CastSkill bool `struct:"byte"`
UseChat bool `struct:"byte"`
UseShout bool `struct:"byte"`
OpenBooth bool `struct:"byte"`
Produce bool `struct:"byte"`
UseMount bool `struct:"byte"`
UseStones bool `struct:"byte"`
PartyType int `struct:"int8"`
MobExpPenalty int `struct:"int32"`
PlayerExpPenalty int `struct:"int32"`
}
type AuctionGroup ¶
type AuctionGroup uint32
const ( AgAll AuctionGroup = iota AgMWeapon AgMArmor AgMAccessory AgMProduce AgMEnchant AgMRaw AgMEtc AgSOneHandSword AgSTwoHandSword AgSAxe AgSMace AgSHammer AgSBow AgSCBow AgSStaff AgSWand AgSClaw AgSDSword AgSFighter AgSCleric AgSArcher AgSMage AgSJoker AgSNeck AgSEarring AgSRing AgSScroll AgSPotion AgSStone AgSFood AgSEnchant AgSProdRaw AgSFarm AgSMover AgSMiniHouse AgSCostume AgSAbility AgSEmotion AgSEtc AgSBlade AgSSentinel AgSBracelet MaxAuctionGroup )
type ChargedEffect ¶
type DispelAttr ¶
type DispelAttr uint32
const ( DaNone DispelAttr = iota DaGood DaDeBuff DaDisease DaPoison DaCurse DaStun DaFear DaDeeper DaHide DaBomb DaCharged MaxDispelAttr )
type EBelongType ¶
type EBelongType uint32
E_BelongType
const ( BtCommon EBelongType = iota BtNoSell BtNoDrop BtNoSellDrop BtAcc BtChr BtOnlyDel BtNoDel BtPutOnAcc BtPutOnChr BtNoStorage MaxEBelongType )
type EffectEnumerate ¶
type EffectEnumerate uint32
const ( EE_SILVERWINGCOOLTIME EffectEnumerate = iota EE_NOLOSTINKILLED EE_MOREINVENTORY EE_MORESTORAGE EE_MOREBOOTHSLOT EE_FASTMINING EE_MOREHPSTONE EE_MORESPSTONE EE_MOREHSPSTONE EE_COSTUM EE_AKPOWER EE_DPPOWER EE_ALLPOWER EE_HPINCREASE EE_SPINCREASE EE_ALLINCREASE EE_DROP_RATE EE_FEED EE_EXP_RATE EE_STATUS EE_ITEMAT_RATE EE_ITENDF_RATE EE_ITEMAL_RATE EE_PRODUCTSPEEDRATE EE_PRODUCTMASTERYRATE EE_PRODUCTALLRATE EE_JUSTREVIVE_HP EE_ENDURE_KIT EE_WEAPON_MAXENDURE EE_ADDPRODSKILL EE_JUSTRREVIVAL EE_SETABSTATE EE_GBCOIN EE_STORAGE_ANYWHERE EE_LPINCREASE EE_AUTOPATHFIND EE_CHATCOLOR EE_TERMEXTEND EE_EXPHOLD EE_CLASSCHANGE EE_QEXP_RATE MAX_EFFECTENUMERATE )
type EnemyDetect ¶
type EnemyDetect uint32
const ( ED_BOUT EnemyDetect = iota ED_AGGRESSIVE ED_NOBRAIN ED_AGGRESSIVE2 ED_AGGREESIVEALL ED_ENEMYALLDETECT MAX_ENEMYDETECT )
type FileDependency ¶
type FileDependency interface {
// e.g:
// ItemInfoServer.shn => { "missingIDs": [1234,1235,1236] }
MissingIdentifiers(string) (Files, error)
}
Some files have linked data in other files Related data is linked using an identifier (ID, InxName, ItemID, ItemOptions, MobID, etc..) Every file may have a dependency in 0-N files The given Type should implement a method where dependencies on related files are checked against
type Files ¶
type Files map[string]Identifiers
type GradeItemOption ¶
type GradeItemOption struct {
ItemIndex string `struct:"[32]byte"`
Strength uint16
Endurance uint16
Dexterity uint16
Intelligence uint16
Spirit uint16
PoisonResistance uint16
DiseaseResistance uint16
CurseResistance uint16
MobilityResistance uint16
AimRate uint16
EvasionRate uint16
MaxHP uint16
MaxSP uint16
PDamageIncrease uint16
MDamageIncrease uint16
// contains filtered or unexported fields
}
type ISEType ¶
type ISEType uint32
const ( ISET_NONEEQUIP ISEType = iota ISET_MINIMON ISET_MINIMON_R ISET_MINIMON_BOTH ISET_COS_TAIL ISET_COS_BACK ISET_COS_RIGHT ISET_COS_LEFT ISET_COS_TWOHAND ISET_COS_HEAD ISET_COS_EYE ISET_COS_3PIECE_AMOR ISET_COS_3PIECE_PANTS ISET_COS_3PIECE_BOOTS ISET_COS_2PIECE_PANTS ISET_COS_1PIECE ISET_NORMAL_BOOTS ISET_NORMAL_PANTS ISET_RING ISET_SHIELD ISET_NORMAL_AMOR ISET_WEAPON_RIGHT ISET_WEAPON_TWOHAND ISET_WEAPON_LEFT ISET_EARRING ISET_NORMAL_HAT ISET_NECK ISET_COS_MASK ISET_INVINCIBLEHAMMER ISET_COS_MASK_EYE ISET_COS_HIDE_HEAD ISET_COS_EFF ISET_COS_SHIELD ISET_BRACELET MAX_ISETYPE )
type Identifiers ¶
type Identifiers map[string][]interface{}
type ItemClassEnum ¶
type ItemClassEnum uint32
const ( ItemClassByteLot ItemClassEnum = iota ItemClassWordLot ItemClassDwrdLot ItemClassQuestItem ItemClassAmulet ItemClassWeapon ItemClassArmor ItemClassShield ItemClassBoot ItemClassFurniture ItemClassDecoration ItemClassSkillScroll ItemClassRecallScroll ItemClassBindItem ItemClassUpsource ItemClassItemChest ItemClassWtLicence ItemKq ItemHouseSkin ItemUpRed ItemUpBlue ItemKqStep ItemFeed ItemRiding ItemAmount ItemUpGold ItemCosWeapon ItemActionItem ItemGbCoin ItemCapsule ItemClosedCard ItemOpenCard ItemMoney ItemNoEffect ItemEnchant ItemActiveSkill ItemPup ItemCosShield ItemBracelet MaxItemEnum )
type ItemData ¶
type ItemData struct {
ItemInfo ShineItemInfo
ItemInfoServer ShineItemInfoServer
GradeItemOptions ShineGradeItemOption
RandomOption ShineRandomOption
RandomOptionCount ShineRandomOptionCount
}
func LoadItemData ¶
TODO: make loader with routines and channels, its too slow right now
type ItemEquipEnum ¶
type ItemEquipEnum uint32
const ( ItemEquipNone ItemEquipEnum = iota ItemEquipHat ItemEquipNoUse03 ItemEquipNoUse01 ItemEquipNoUse02 ItemEquipFaceTattoo ItemEquipNecklace ItemEquipBody ItemEquipBodyAcc ItemEquipBack ItemEquipLeftHand ItemEquipLeftHandAcc ItemEquipRightHand ItemEquipRightHandAcc ItemEquipBracelet ItemEquipLeftRing ItemEquipRightRing ItemEquipCosEff ItemEquipTail ItemEquipLeg ItemEquipLegAcc ItemEquipShoes ItemEquipShoesAcc ItemEquipEarRing ItemEquipMouth ItemEquipMinimon ItemEquipEye ItemEquipHatAcc ItemEquipMinimonR ItemEquipShieldAcc MaxItemEquipEnum )
type ItemFuncEnum ¶
type ItemFuncEnum uint32
const ( ItemFuncNone ItemFuncEnum = iota ItemFuncEndureKitWc ItemFuncEndureKitF ItemFuncJustRevival ItemFuncChangeName ItemFuncChangeRelation ItemFuncPutOnClear MaxItemFuncEnum )
type ItemInfo ¶
type ItemInfo struct {
ID uint16
InxName string `struct:"[32]byte"`
Name string `struct:"[64]byte"`
Type ItemTypeEnum
Class ItemClassEnum
MaxLot uint32
Equip ItemEquipEnum
ItemAuctionGroup AuctionGroup
ItemGradeType GradeType
TwoHand byte
AtkSpeed uint32
DemandLv uint32
Grade uint32
MinWC uint32
MaxWC uint32
AC uint32
MinMA uint32
MaxMA uint32
MR uint32
TH uint32
TB uint32
WCRate uint32
MARate uint32
ACRate uint32
MRRate uint32
CriRate uint32
CriMinWc uint32
CriMaxWc uint32
CriMinMa uint32
CriMaxMa uint32
CrlTB uint32
UseClass UseClassType
BuyPrice uint32
SellPrice uint32
BuyDemandLv byte
BuyFame uint32
BuyGToken uint32
BuyGBCoin uint32
WeaponType WeaponTypeEnum
ArmorType ArmorTypeEnum
UpLimit byte
BasicUpInx uint16
UpSucRatio uint16
UpLuckRatio uint16
UpResource byte
AddUpInx uint16
ShieldAC uint32
HitRatePlus uint32
EvaRatePlus uint32
MACriPlus uint32
CriDamPlus uint32
MagCriDamPlus uint32
BTInx EBelongType
TitleName string `struct:"[32]byte"`
ItemUseSkill string `struct:"[32]byte"`
SetItemIndex string `struct:"[32]byte"`
ItemFunc ItemFuncEnum
// contains filtered or unexported fields
}
type ItemInfoServer ¶
type ItemInfoServer struct {
ID uint32
InxName string `struct:"[32]byte"`
MarketIndex string `struct:"[20]byte"`
City byte
DropGroupA string `struct:"[40]byte"`
DropGroupB string `struct:"[40]byte"`
RandomOptionDropGroup string `struct:"[33]byte"`
Vanish uint32
Looting uint32
DropRateKilledByMob uint16
DropRateKilledByPlayer uint16
ISETIndex ISEType
ItemSortIndex string `struct:"[32]byte"`
KQITem byte
PkKqUse byte
KqItemDrop byte
PreventAttack byte
// contains filtered or unexported fields
}
type ItemTypeEnum ¶
type ItemTypeEnum uint32
const ( ItemTypeEqu ItemTypeEnum = iota ItemTypeExh ItemTypeEtc ItemTypeQuest ItemTypeStartQuest ItemTypeVip ItemTypeConfirm MaxItemTypeEnum )
type MapData ¶
func LoadMapData ¶
type MapInfo ¶
type MapInfo struct {
ID uint16
MapName structs.Name3
Name string `struct:"[32]byte"`
IsWMLink WMLink
RegenX uint32
RegenY uint32
KingdomMap byte
MapFolderName structs.Name3
InSide byte
Sight uint32
// contains filtered or unexported fields
}
struct MapInfo
{
unsigned __int16 ID;
Name3 MapName;
char Name[32];
WM_Link IsWMLink;
unsigned int RegenX;
unsigned int RegenY;
char KingdomMap;
Name3 MapFolderName;
char InSide;
unsigned int Sight;
};
type MiniHouse ¶
type MiniHouse struct {
Handle uint16
ItemID string `struct:"[32]byte"`
DummyType string `struct:"[32]byte"`
BackImage string `struct:"[32]byte"`
KeepTimeHour uint16
HPTick uint16
SPTick uint16
HPRecovery uint16
SPRecovery uint16
Casting uint16
Slot byte
// contains filtered or unexported fields
}
struct MiniHouse
{
unsigned __int16 Handle;
char ItemID[32];
char DummyType[32];
char Backimage[32];
unsigned __int16 KeepTime_Hour;
unsigned __int16 HPTick;
unsigned __int16 SPTick;
unsigned __int16 HPRecovery;
unsigned __int16 SPRecovery;
unsigned __int16 Casting;
char Slot;
};
type MobGradeType ¶
type MobGradeType uint32
const ( MGT_NORMAL MobGradeType = iota MGT_CHIEF MGT_BOSS MGT_HERO MGT_ELITE MGT_NONE MAX_MOBGRADETYPE )
type MobInfo ¶
type MobInfo struct {
ID uint16
InxName string `struct:"[32]byte"`
Name string `struct:"[32]byte"`
Level uint32
MaxHP uint32
WalkSpeed uint32
RunSpeed uint32
IsNPC byte
Size uint32
WeaponTypeEnum
ArmorTypeEnum
MobGradeType
MobType
IsPlayerSide byte
AbsoluteSize uint32
// contains filtered or unexported fields
}
type MobInfoServer ¶
type MobInfoServer struct {
ID uint32
InxName string `struct:"[32]byte"`
Visible byte
AC uint16
TB uint16
MR uint16
MB uint16
EnemyDetect
MobKillType
MonExp uint32
ExpRange uint16
DetectCha uint16
ResetInterval byte
CutInterval uint16
CutNonAT uint32
FollowCha uint32
PceHPRcvDly uint16
PceHPRcv uint16
AtkHPRcvDly uint16
AtkHPRcv uint16
Str uint16
Dex uint16
End uint16
Int uint16
Spr uint16
MobRace
Rank byte
FamilyArea uint32
FamilyRescArea uint32
FamilyRescCount byte
BloodingResi uint16
StunResi uint16
MoveSpeedResi uint16
FearResi uint16
ResIndex string `struct:"[32]byte"`
KQKillPoint uint16
Return2Regen byte
IsRoaming byte
RoamingNumber byte
RoamingDistance uint16
RoamingRestTime uint16
MaxSP uint16
BroadAtDead byte
TurnSpeed uint16
WalkChase uint16
AllCanLoot byte
DmgByHealMin uint16
DmgByHealMax uint16
RegenInterval uint16
// contains filtered or unexported fields
}
type MobKillType ¶
type MobKillType uint32
const ( MKT_DEFAULT MobKillType = iota MKT_ONLYSCRIPT MKT_MOB MAX_MOBKILLTYPE )
type MobRace ¶
type MobRace uint32
const ( MR_NONE MobRace = iota MR_PHINO MR_MARA MR_MARLONE MR_SKEL MR_CEM MR_GOBLIN MR_KARA MR_KEEPER MR_PI MR_LIZARD MR_TRUMPY MR_ORC MR_SLIME MR_BOAR MR_STAFF MR_ARCHON MR_STONIE MR_INCUBUS MR_TREE MR_IMP MR_VIVI MR_KEBING MR_GUARDIAN MR_MINER MR_BELLOW MR_CAIMAN MR_RHINOCE MR_MUD MR_SLUG MR_SHADOW MR_CHAR MR_STATUE MR_HELGA MR_SPIRIT MR_MAGRITE MR_WOLF MR_BEAR MR_SPIDER MR_MAND MR_LICH MR_POON MR_DEPRAVITY MR_WIND MR_SELF MR_ELF MR_HONEYING MR_BOOGY MR_CRAB MR_GUARD_NORMAL MR_DEVILDOM MR_SLAYER MR_DARKARMY MR_BKNIGHTS MAX_MOBRACE )
type MobType ¶
type MobType uint32
const ( MT_HUMAN MobType = iota MT_MAGICLIFE MT_SPIRIT MT_BEAST MT_ELEMENTAL MT_UNDEAD MT_NPC MT_OBJECT MT_MINE MT_HERB MT_WOOD MT_NONAME MT_NOTARGET MT_NOTARGET2 MT_GLDITEM MT_FLAG MT_DEVIL MT_META MT_NODAMAGE MT_NODAMAGE2 MT_NONAMEGATE MT_BOX_HERB MT_BOX_MINE MT_GB_DICE MT_NODAMAGE3 MT_FRIEND MT_GB_SLOTMACHINE MT_FRIENDDMGABSORB MT_DEVILDOM MT_NOTARGET3 MT_META2 MT_DWARF MT_MACHINE MAX_MOBTYPE )
type MonsterData ¶
type MonsterData struct {
MapRegens map[string]MonsterRegenTable
MobInfo ShineMobInfo
MobInfoServer ShineMobInfoServer
}
func LoadMonsterData ¶
func LoadMonsterData(shineFolder string) (*MonsterData, error)
load SHN files load into MonsterData persist monsterData
type MonsterRegenTable ¶
type MonsterRegenTable struct {
Groups map[string]*RegenEntry
}
type NpcData ¶
type NpcData struct {
MapNPCs map[string][]*ShineNPC
VendorNPCs map[string]*VendorItems
}
func LoadNPCData ¶
type RandomOption ¶
type RandomOption struct {
DropItemIndex string `struct:"[33]byte"`
RandomOptionType RandomOptionType
Min uint32
Max uint32
TypeDropRate uint32
// contains filtered or unexported fields
}
stats
type RandomOptionCount ¶
type RandomOptionCount struct {
DropItemIndex string `struct:"[33]byte"`
LimitCount uint16
LimitDropRate uint16
// contains filtered or unexported fields
}
Amount of stats that can drop and the drop rate
type RandomOptionType ¶
type RandomOptionType uint32
const ( ROT_STR RandomOptionType = iota ROT_CON ROT_DEX ROT_INT ROT_MEN ROT_TH ROT_CRI ROT_WC ROT_AC ROT_MA ROT_MR ROT_TB ROT_CRITICAL_TB ROT_DEMANDLVDOWN ROT_MAXHP MAX_RANDOMOPTIONTYPE )
type RegenEntry ¶
type RegenEntry struct {
IsFamily bool
X, Y, Width, Height, RangeDegree int
Mobs []RegenEntryMob
}
type RegenEntryMob ¶
type SHBD ¶
type SHBD struct {
X int `struct:"int32"`
Y int `struct:"int32"`
Data []byte `struct-size:"X * Y"`
}
func ImageToSHBD ¶
func LoadSHBDFile ¶
type ShineAbState ¶
type ShineChargedEffect ¶
type ShineChargedEffect struct {
DataSize uint32
RowsCount uint32
FieldSize uint32
ColumnCount uint32
Columns []ShineColumn `struct:"sizefrom=ColumnCount"`
ShineRow []ChargedEffect `struct:"sizefrom=RowsCount"`
}
type ShineColumn ¶
type ShineColumn struct {
Name string `struct:"[48]byte"`
Type ShineDataType
Size uint32
}
type ShineDataMode ¶
type ShineDataMode uint32
const ( DataModeNormal ShineDataMode = iota DataModeEncryption )
type ShineDataType ¶
type ShineDataType uint32
const ( TypeListEnd ShineDataType = iota TypeListByte TypeListWord TypeListDword TypeListQWord TypeListFloat TypeListFilename TypeListFileAuto TypeListRemark TypeListStr TypeListStrAuto TypeListInx TypeListInxByte TypeListInxWord TypeListInxDword TypeListInxQWord TypeListByteBit TypeListWordBit TypeListDwordBit TypeListQWordBit TypeListByteArray TypeListWordArray TypeListDWordArray TypeListQWordArray TypeListStrArray TypeListStrAutoArray TypeListVarStr TypeListInxStr TypeListUnknownEd TypeListTwoInx )
type ShineGradeItemOption ¶
type ShineGradeItemOption struct {
DataSize uint32
RowsCount uint32
FieldSize uint32
ColumnCount uint32
Columns []ShineColumn `struct:"sizefrom=ColumnCount"`
ShineRow []GradeItemOption `struct:"sizefrom=RowsCount"`
}
type ShineItemInfo ¶
type ShineItemInfo struct {
DataSize uint32
RowsCount uint32
FieldSize uint32
ColumnCount uint32
Columns []ShineColumn `struct:"sizefrom=ColumnCount"`
ShineRow []ItemInfo `struct:"sizefrom=RowsCount"`
}
func (*ShineItemInfo) MissingIdentifiers ¶
func (s *ShineItemInfo) MissingIdentifiers(filesPath string) (Files, error)
type ShineItemInfoServer ¶
type ShineItemInfoServer struct {
DataSize uint32
RowsCount uint32
FieldSize uint32
ColumnCount uint32
Columns []ShineColumn `struct:"sizefrom=ColumnCount"`
ShineRow []ItemInfoServer `struct:"sizefrom=RowsCount"`
}
type ShineMapInfo ¶
type ShineMiniHouse ¶
type ShineMobInfo ¶
type ShineMobInfoServer ¶
type ShineMobInfoServer struct {
DataSize uint32
RowsCount uint32
FieldSize uint32
ColumnCount uint32
Columns []ShineColumn `struct:"sizefrom=ColumnCount"`
ShineRow []MobInfoServer `struct:"sizefrom=RowsCount"`
}
type ShinePortal ¶
type ShineRandomOption ¶
type ShineRandomOption struct {
DataSize uint32
RowsCount uint32
FieldSize uint32
ColumnCount uint32
Columns []ShineColumn `struct:"sizefrom=ColumnCount"`
ShineRow []RandomOption `struct:"sizefrom=RowsCount"`
}
type ShineRandomOptionCount ¶
type ShineRandomOptionCount struct {
DataSize uint32
RowsCount uint32
FieldSize uint32
ColumnCount uint32
Columns []ShineColumn `struct:"sizefrom=ColumnCount"`
ShineRow []RandomOptionCount `struct:"sizefrom=RowsCount"`
}
type ShineRawFile ¶
type SubDispelAttr ¶
type SubDispelAttr uint32
const ( SdaNone SubDispelAttr = iota SdaStun SdaMovespeed SdaFear SdaBlooding SdaDeeper SdaBlind SdaReverse SdaBind SdaMesmerize SdaSeverBone SdaKnockBack SdaTBMinus SdaGtiResist MaxSubDispelAttr )
type UseClassType ¶
type UseClassType uint32
const ( UctNone UseClassType = iota UctAll UctFighterAll UctCleverFighterAndOver UctWarriorAndOver UctWarriorOver UctGladiatorOnly UctKnightOnly UctClericAll UctHighClericAndOver UctPaladinAndOver UctGuardianOnly UctHolyKnightOnly UctPaladinOver UctArcherAll UctHawkArcherAndOver UctScoutAndOver UctRangerOnly UctSharpshooterOnly UctScoutOver UctMageAll UctWizMageAndOver UctEnchanterAndOver UctWizardOnly UctWarlockOnly UctEnchanterOver UctSentinelExclude UctJokerAll UctChaserAndOver UctCruelAndOver UctAssassinOnly UctCloserOnly UctCruelOver UctSentinelAll UctSaviorOnly UctDeeperSkill UctShield UctClassChange UctShieldNotGla MaxUseClassType )
type VendorGrid ¶
type VendorGrid [8][6]string
type VendorItems ¶
type VendorTab ¶
type VendorTab struct {
Pages []VendorGrid
}
type WMLink ¶
type WMLink uint32
enum WM_Link
{
WM_NONE = 0x0,
WM_ROUN = 0x1,
WM_ROUCOS01 = 0x2,
WM_ROUCOS02 = 0x3,
WM_ROUCOS03 = 0x4,
WM_ROUVAL01 = 0x5,
WM_ROUVAL02 = 0x6,
WM_ELD = 0x7,
WM_ELDCEM01 = 0x8,
WM_ELDCEM02 = 0x9,
WM_ELDGBL01 = 0xA,
WM_ELDPRI01 = 0xB,
WM_ELDFOR01 = 0xC,
WM_ELDSLEEP01 = 0xD,
WM_URG = 0xE,
WM_ECHOCAVE = 0xF,
WM_WINDYCAVE = 0x10,
WM_GOLDCAVE = 0x11,
WM_URGFIRE01 = 0x12,
WM_URGSWA01 = 0x13,
WM_ELDGBL02 = 0x14,
WM_ELDPRI02 = 0x15,
WM_LINKFIELD01 = 0x16,
WM_LINKFIELD02 = 0x17,
WM_URG_ALRUIN = 0x18,
WM_ADLTHORN01 = 0x19,
WM_URGDARK01 = 0x1A,
WM_BERKAL01 = 0x1B,
WM_BERA_ = 0x1C,
WM_ADL = 0x1D,
WM_BERFRZ01 = 0x1E,
WM_BERVALE01 = 0x1F,
WM_ADLVAL01 = 0x20,
WM_TEVAL = 0x21,
WM_BATTLEFIELD = 0x22,
WM_TCAVE = 0x23,
WM_SER = 0x24,
MAX_WM_LINK = 0x25,
};
const ( WmNone WMLink = iota WmRouN WmRouCos01 WmRouCos02 WmRouCos03 WmRouVal01 WmRouVal02 WmEld WmEldCem01 WmEldCem02 WmEldGbl01 WmEldPri01 WmEldFor01 WmEldSleep01 WmUrg WmEchoCave WmWindyCave WmGoldCave WmUrgFire01 WmUrgSwa01 WmEldGbl02 WmEldPri02 WmLinkField01 WmLinkField02 WmUrgAlruin WmAdlThorn01 WmUrgDark01 WmBerKal01 WmBera WmAdl WmBerFrz01 WmBerVale01 WmAdlVal01 WmTeVal WmBattlefield WmTCave WmSer MaxWmLink )
type WeaponTypeEnum ¶
type WeaponTypeEnum uint32
const ( WtNone WeaponTypeEnum = iota WtSword WtBow WtStaff WtAxe WtMace WtSpike WtFist WtBody WtStone WtCrossbow WtWand WtSpear WtHammer WtSpecial WtProductionTool WtInvincibleHammer WtDSword WtClaw WtBlade WtRangePy WtTSword MaxWeaponTypeEnum )
Click to show internal directories.
Click to hide internal directories.