Source: Generic/structs.js

// This file is part of InfiniteSky.
// Copyright (c) InfiniteSky Dev Teams - Licensed under GNU GPL
// For more information, see LICENCE in the main folder
vms('Structs', [], function(){
if (typeof structs === 'undefined') {
    structs = {}; // Global Variable of main.js range
}

/**
 * CVec3_Restruct
 * @mixin
 * @type {Restruct}
 */
structs.CVec3= restruct.
	float32l('X').
	float32l('Y').
	float32l('Z');

structs.Equipt= restruct.
	int32lu('ID').
	int32lu('Capacity').
	int8lu('Enchant'). // 1 = 3%
	int8lu('Combine').
	int16lu('Unknown');

structs.Bottle= restruct.
	int32lu('ID').
	int8lu('Capacity').
	int8lu('Capacity').
	int8lu('Capacity').
	int8lu('Capacity').
	int8lu('Capacity').
	int8lu('Capacity').
	int8lu('Capacity').
	int8lu('Capacity');

structs.ItemEquip = restruct.
	int32lu('ID').
	int8lu('Enchant'). // 1 = 3%
	int8lu('Combine');

structs.SmallStorageItem = restruct.
	int32lu('ID').
	int32lu('Amount').
	int8lu('Enchant').
	int8lu('Combine').
	int16lu('unk');

structs.SmallStorageItemPet = restruct.
	int32lu('ID').
	int32lu('Activity').
	int32lu('Growth');

structs.Pet= restruct.
	int32lu("ID").
	int16lu('Activity').
	int16lu('Unknown').
	int32lu('Growth');
//
// structs.PetEquip = restruct.
// 	int32lu("ID").
//   int8lu('').
// 	int8lu('Activity').
// 	int32lu('Growth');

structs.StorageItem = restruct.
	int32lu("ID").
	int32lu("Column").
	int32lu("Row").
	int32lu("Amount").
	int8lu("Enchant").
	int8lu("Combine").
	int16lu("Unknown");

structs.StorageItemPet = restruct.
	int32lu("ID").
	int32lu("Column").
	int32lu("Row").
	int32lu("Activity").
	int32lu("Growth");

structs.GiftItem = restruct.
	int32lu("ID").
	int32lu("Amount");

structs.QuickUseItem= restruct.
	int32lu("ID").
	int32lu("Amount");

structs.QuickUseSkill= restruct.
	int32lu("ID").
	int32lu("Level");

structs.LevelUpPacket = restruct.
  int8lu('PacketID').
  int32lu('CharacterID').
  int32lu('NodeID').
  int8lu('LevelsGained');
// 	structs. = restruct.REGION_MOVE_INFO
// 	float mPlaneInfo[4];
// 	float mSphereInfo[4];

// //STRUCTURE-[WORLDTRIS_FOR_GXD]
// structs. = restruct.WREGION_
// 	int ZoneAmount.//4
// 	REGION_MOVE_INFO Region[ZoneAmount];


// structs. = restruct.WM_FILE_HEADER
// 	int Size; ///size of compressed data
// 	float OrgSize; // size of uncompressed data
// // WM using ZLIB

// structs. = restruct.WM_FILE
// 	WM_FILE_HEADER;
// 	int8lu Compressed [WM_FILE_HEADER.Size];
// // WM using ZLIB

// structs. = restruct.WORLDVERTEX_FOR_GXD
// 	float mV[3];//12
// 	float mN[3];//24
// 	float mT1[2];//32
// 	float mT2[2];//40

// //STRUCTURE-[WORLDTRIS_FOR_GXD]
// structs. = restruct.WORLDTRIS_FOR_GXD
// 	int mTextureIndex;//4
// 	struct('WORLDVERTEX_FOR_GXD' mVertex[3];//124
// 	float mPlaneInfo[4];//140
// 	float mSphereInfo[4];//156


// structs. = restruct.WORLDTRIS_FOR_GXD
// 	int32lu('WORLDTRIS_AMOUNT').
// 	struct('WORLDTRIS_FOR_GXD',[WORLDTRIS_AMOUNT]).
// 	int8lu('QUADTREENODESTUFF',sizeof(WM_FILE.WM_FILE_HEADER.Size - WORLDTRIS_FOR_GXD[WORLDTRIS_AMOUNT])); // rest of data is quadtree stuffy :()


//Needs option in restruct to have array of strings with length, aka string('blah', 10, 13).  instead of struct for 10 friends
// Could probably make one [Liam]
structs.Friend = restruct.
	string('Name',13);

structs.Equip = function()
{
	this.ID=0;
	this.Enchant=0;
	this.Combine=0;
}


// Need to find skill and statpoints
structs.Character = restruct.
  int32lu('Usable_LuckyEnchanting').
  int32lu('Usable_LuckyUpgrading').
  int32lu('Usable_LuckyCombining').
  pad(16).
	// int32lu('Unused1',6).//Will add later // 8
	int32lu('PlayTime'). // 12
	string('Name', 13). // 25
	pad(71). // 144 StuffLikeLocation
  int32lu('Usable_ProtectionCharm').
  int32lu('Usable_GuildInsignia').
  int32lu('').
  int32lu('').
  int32lu('').
  int32lu('').
  int32lu('').
  int32lu('').
  int32lu('').
  int32lu('').
  int32lu('').
  int32lu('').
	int32lu('Clan'). // 148
	int32lu('Gender'). // 152
	int32lu('Hair'). // 156
	int32lu('Face'). // 160
	int32lu('Level'). // 164
	int32lu('Experience'). // 168
	pad(8).//Will add later // 172
	int32lu('SkillPoints'). // 176
	int32lu('Honor'). // 180
	int32lu('StatPoints'). // 184
	int32lu('Stat_Vitality'). // 200
	int32lu('Stat_Strength'). // 188
	int32lu('Stat_Chi'). // 192
	int32lu('Stat_Dexterity'). // 196
	pad(8). //Will add later // 208
	//Equipt structs needed here, try find restruct's struct-in-struct example, or ask for one
	struct('Amulet',structs.Equipt). // 220
	struct('Cape',structs.Equipt). // 232
	struct('Outfit',structs.Equipt). // 244
	struct('Gloves',structs.Equipt). // 256
	struct('Ring',structs.Equipt). // 268
	struct('Boots',structs.Equipt). // 280
	struct('Bottle',structs.Equipt). //Unknown Equip( using calbash improves ur dmg and reduces ur def(hotkey Q)item ingame ID 90030) // 292
	struct('Weapon',structs.Equipt). // 304
	struct('Pet',structs.Pet). // 316
	int32lu('storageUse'). // 320
	int32lu('Silver'). // here! // 324
	// struct('Inventory',structs.StorageItem,64).
	pad(1280). // Inventory space for working on the buffer
	struct('QuickUseItems',structs.QuickUseItem,4). // 1604
	int32lu('StorageSilver'). // 1636                      
	pad(1008). // 1640

	struct('SkillList',structs.QuickUseSkill,30). // 2648
	struct('SkillBar',structs.QuickUseSkill,24). // 2888
	int32lu('QuestPrevious').// Holds the ID of the previous completed quest.
	int32lu('QuestCurrent').//  Holds the ID of the current quest.
	int32lu('QuestPart'). // Holds the value of the current quest part.
	int32lu('QuestCounter'). // Holds how many monsters were killed for the quest in progress.
	int32lu('QuestOther').   // Not sure...
	pad(16).

	string('Friends',13,10).

	string('GuildName', 13).
	int8ls(''). // 3270
	int32lu('GuildLevel'). // 3284
	int32lu('GuildAccess'). // 3288
	int32lu(''). // 3292
	int32lu(''). // 3296
	int32lu('ContributionPoints'). // 3308
	int32lu(''). // 3300
	int32lu(''). // 3304
	int32lu(''). // 3312
	int32lu(''). // 3316

	 int32lu('MapID'). // 3320
	 int32lu('RealX'). // 3324
	 int32lu('RealY'). // 3328
	 int32lu('RealZ'). // 3332
	 int32lu('Health'). // 3336
	 int32lu('Chi'). // 3340
	 int32lu('BankSilver'). // 3344
	 int32lu(''). // 3348
	 int32lu(''). // 3352
	 int32lu(''). // 3356
	 int32lu(''). // 3360
	 int32lu(''). // 3364
	 int32lu(''). // 3368
	 int32lu(''). // 3372
	 int32lu(''). // 3376
	 int32lu(''). // 3380
	 int32lu(''). // 3384
	 int32lu(''). // 3388
	 int32lu(''). // 3392
	 int32lu(''). // 3396
	 int32lu(''). // 3400
	 int32lu(''). // 3404
	 int32lu(''). // 3408
	 int32lu(''). // 3412
	 int32lu(''). // 3416
	 int32lu(''). // 3420
	 int32lu(''). // 3424
	 int32lu(''). // 3428
	 int32lu(''). // 3432
	 int32lu(''). // 3436
	 int32lu(''). // 3440
	 int32lu(''). // 3444
	 int32lu(''). // 3448
	 int32lu(''). // 3452
	 int32lu(''). // 3456
	 int32lu(''). // 3460
	 int32lu(''). // 3464
	 int32lu(''). // 3468
	 int32lu(''). // 3472
	 int32lu(''). // 3476
	 int32lu(''). // 3480
	 int32lu(''). // 3484
	 int32lu(''). // 3488
	 int32lu(''). // 3492
	 int32lu(''). // 3496
	 int32lu(''). // 3500
	 int32lu(''). // 3504
	 int32lu(''). // 3508
	 int32lu(''). // 3512
	 int32lu(''). // 3516
	 int32lu(''). // 3520
	 int32lu(''). // 3524
	 int32lu(''). // 3528
	 int32lu(''). // 3532
	 int32lu(''). // 3536
	 int32lu(''). // 3540
	 int32lu(''). // 3544
	 int32lu(''). // 3548
	 int32lu(''). // 3552
	 int32lu(''). // 3556
	 int32lu(''). // 3560
	 int32lu(''). // 3564
	 int32lu(''). // 3568
	 int32lu(''). // 3572
	 int32lu(''). // 3576
	 int32lu(''). // 3580
	 int32lu(''). // 3584
	 int32lu(''). // 3588
	 int32lu(''). // 3592
	 int32lu(''). // 3596
	 int32lu(''). // 3600
	 int32lu(''). // 3604
	 int32lu(''). // 3608
	 int32lu(''). // 3612
	 int32lu(''). // 3616
	 int32lu(''). // 3620
	 int32lu(''). // 3624
	 int32lu(''). // 3628
	 int32lu(''). // 3632
	 int32lu(''). // 3636
	 int32lu(''). // 3640
	 int32lu(''). // 3644
	 int32lu(''). // 3648
	 int32lu(''). // 3652
	 int32lu(''). // 3656
	 int32lu(''). // 3660
	 int32lu(''). // 3664
	 int32lu(''). // 3668
	 int32lu(''). // 3672
	 int32lu(''). // 3676
	 int32lu(''). // 3680
	 int32lu(''). // 3684
	 int32lu(''). // 3688
	 int32lu(''). // 3692
	 int32lu(''). // 3696
	 int32lu(''). // 3700
	 int32lu(''). // 3704
	 int32lu(''). // 3708
	 int32lu(''). // 3712
	 int32lu(''). // 3716
	 int32lu(''). // 3720
	 int32lu(''). // 3724
	 int32lu(''). // 3728
	 int32lu(''). // 3732
	 int32lu(''). // 3736
	 int32lu(''). // 3740
	 int32lu(''). // 3744
	 int32lu(''). // 3748
	 int32lu(''). // 3752
	 int32lu(''). // 3756
	 int32lu(''). // 3760
	 int32lu(''). // 3764
	 int32lu(''). // 3768
	 int32lu(''). // 3772
	 int32lu(''). // 3776
	 int32lu(''). // 3780
	 int32lu(''). // 3784
	 int32lu(''). // 3788
	 int32lu(''). // 3792
	 int32lu(''). // 3796
	 int32lu(''). // 3800
	 int32lu(''). // 3804
	 int32lu(''). // 3808
	 int32lu(''). // 3812
	 int32lu(''). // 3816
	 int32lu(''). // 3820
	 int32lu(''). // 3824
	 int32lu(''). // 3828
	 int32lu(''). // 3832
	 int32lu(''). // 3836
	 int32lu(''). // 3840
	 int32lu(''). // 3844
	 int32lu(''). // 3848
	 int32lu(''). // 3852
	 int32lu(''). // 3856
	 int32lu(''). // 3860
	 int32lu(''). // 3864
	 int32lu(''). // 3868
	 int32lu(''). // 3872
	 int32lu(''). // 3876
	 int32lu(''). // 3880
	 int32lu(''). // 3884
	 int32lu(''). // 3888
	 int32lu(''). // 3892
	 int32lu(''). // 3896
	 int32lu(''). // 3900
	 int32lu(''). // 3904
	 int32lu(''). // 3908
	 int32lu(''). // 3912
	 int32lu(''). // 3916
	 int32lu(''). // 3920
	 int32lu(''). // 3924
	 int32lu(''). // 3928
	 int32lu(''). // 3932
	 int32lu(''). // 3936
	 int32lu(''). // 3940
	 int32lu(''). // 3944
	 int32lu(''). // 3948
	 int32lu(''). // 3952
	 int32lu(''). // 3956
	 int32lu(''). // 3960
	 int32lu(''). // 3964
	 int32lu(''). // 3968
	 int32lu(''). // 3972
	 int32lu(''). // 3976
	 int32lu(''). // 3980
	 int32lu(''). // 3984
	 int32lu(''). // 3988
	 int32lu(''). // 3992
	 int32lu(''). // 3996
	 int32lu(''). // 4000
	 int32lu(''). // 4004
	 int32lu(''). // 4008
	 int32lu(''). // 4012
	 int32lu(''). // 4016
	 int32lu(''). // 4020
	 int32lu(''). // 4024
	 int32lu(''). // 4028
	 int32lu(''). // 4032
	 int32lu(''). // 40363344
	 int32lu('StrBonus'). // 4040
	 int32lu('DexBonus'). // 4044
	 int32lu(''). // 4048
	 int32lu(''). // 4052
	 int32lu(''). // 4056
	 int32lu('LuckBuff'). // 4060
	 int32lu('StrengthBuff'). // 4064
	 int32lu('ExperienceBuff'). // 4068
	 int32lu(''). // 4072
	 int32lu('AutoBuff'). // 4076
	 int32lu('AutoBuff0'). // 4080
	 int32lu('AutoBuff0_Active'). // 4084
	 int32lu('AutoBuff1'). // 4088
	 int32lu('AutoBuff1_Active'). // 4092
	 int32lu('AutoBuff2'). // 4096
	 int32lu('AutoBuff2_Active'). // 4100
	 int32lu('AutoBuff3'). // 4104
	 int32lu('AutoBuff3_Active'). // 4108
	 int32lu('AutoBuff4'). // 4112
	 int32lu('AutoBuff_Active'). // 4116
	 int32lu('AutoBuff5'). // 4120
	 int32lu('AutoBuff5_Active'). // 4124
	 int32lu('AutoBuff6'). // 4128
	 int32lu('AutoBuff6_Active'). // 4132
	 int32lu('AutoBuff7'). // 4136
	 int32lu('AutoBuff7_Active'). // 4140
	 int32lu(''). // 4144
	 int32lu(''). // 4148
	 int32lu('Bonus'). // 4152
	 int32lu(''). // 4156
	 int32lu(''). // 4160
	 int32lu(''). // 4164
	 int32lu(''). // 4168
	 int32lu(''). // 4172
	 int32lu('AutoPillHP'). // 4176
	 int32lu('AutoPillChi'). // 4180
	 int32lu(''). // 4184
	 int32lu(''). // 4188
	 int32lu(''). // 4192
	 int32lu(''). // 4196
	 int32lu(''). // 4200
	 int32lu(''). // 4204
	 int32lu(''). // 4208
	 int32lu(''). // 4212
	 int32lu(''). // 4216
	 int32lu('Title'). // 4220
	 int32lu(''). // 4224
	 int32lu(''). // 4228
	 int32lu(''). // 4232
	 int32lu(''). // 4236
	 int32lu(''). // 4240
	 int32lu(''). // 4244
	 int32lu(''). // 4248
	 int32lu(''). // 4252
	 int32lu(''). // 4256
	 int32lu(''). // 4260
	 int32lu(''). // 4264
	 int32lu(''). // 4268
	 int32lu(''). // 4272
	 int32lu(''). // 4276
	 int32lu(''). // 4280
	 int32lu(''). // 4284
	 int32lu(''). // 4288
	 int32lu(''). // 4292
	 int32lu(''). // 4296
	 int32lu(''). // 4300
	 int32lu(''). // 4304
	 int32lu(''). // 4308
	 int32lu(''). // 4312
	 int32lu(''). // 4316
	 int32lu('ElementalDamage'). // 4320
	 int32lu('ElementalDefense'). // 4324
	 int32lu('DarkDamage'). // 4328
	 int32lu('FactionDefenseBonus'). // 4332
	 int32lu(''). // 4336
	 int32lu('ChanceDodge_Hit'). // 4340
	 int32lu('DamageBonus'). // 4344
	 int32lu('StackedSilver'). // 4348
	 int32lu(''). // 4352
	 int32lu(''). // 4356
	 int32lu(''). // 4360
	 int32lu('Daily1'). // 4364
	 int32lu('DailyPvPKill'). // 4368
	 int32lu('DailyUnknown'). // 4372
	 int32lu('DailyUnknown2'). // 4376
	 //int32lu('DailyPvMKill'); // 4380
	 pad(3);

structs.SpawnInfo = restruct.
	int32lu('UniqueID').
	int32lu('ID').
	struct('Location',structs.CVec3).
	float32l('Direction');

structs.WREGION = restruct.
	int32ls('Unknown1').
	int32ls('ZoneID').
	int32ls('Unknown2').
	int32ls('Unknown3').
	int32ls('X').
	int32ls('Y').
	int32ls('Z').
	int32ls('Radius');

var cbFix = restruct.
	int32lu("ID").
	int32lu("Column").
	int32lu("Row").
	int32lu("Capacity").
	int32lu("Unknown");

structs.HealingReplyPacket = restruct.
  int8lu('PacketID').
  int32lu('Level').
  int32lu('Experience').
  int32lu('Honor').
  int32lu('CurrentHP').
  int32lu('CurrentChi').
  int32lu('PetActivity').
  int32lu('PetGrowth');
});
The contributors to the InfiniteSky project.
Documentation generated by JSDoc 3.4.0 on Sat Jul 16th 2016