ygocore-interface
Version:
[WIP] ygocore interface (message definitions, constants, api signatures)
1,553 lines • 76.4 kB
JavaScript
"use strict";
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", { value: true });
var BufferReader = /** @class */ (function () {
function BufferReader(buffer, off) {
if (off === void 0) { off = 0; }
this.buffer = buffer;
this.off = off;
}
BufferReader.prototype.nextI8 = function () {
return this.buffer.readInt8(this.off++);
};
BufferReader.prototype.nextU8 = function () {
return this.buffer.readUInt8(this.off++);
};
BufferReader.prototype.nextI16 = function () {
return this.buffer.readInt16LE((this.off += 2) - 2);
};
BufferReader.prototype.nextU16 = function () {
return this.buffer.readUInt16LE((this.off += 2) - 2);
};
BufferReader.prototype.nextI32 = function () {
return this.buffer.readInt32LE((this.off += 4) - 4);
};
BufferReader.prototype.nextU32 = function () {
return this.buffer.readUInt32LE((this.off += 4) - 4);
};
BufferReader.prototype.finished = function () {
return this.off >= this.buffer.length;
};
return BufferReader;
}());
/**
* parse bytes as MsgRetry (MSG_RETRY)
*/
function parseMsgRetry(_buffer) {
var result = {};
{ /* reading result (MsgRetry) */
}
result.msgtype = 'MSG_RETRY';
return result;
}
/**
* parse bytes as MsgHint (MSG_HINT)
*/
function parseMsgHint(buffer) {
var result = {};
{ /* reading result (MsgHint) */
result.type = buffer.nextI8();
result.player = buffer.nextU8();
result.data = buffer.nextI32();
}
result.msgtype = 'MSG_HINT';
return result;
}
/**
* parse bytes as MsgWin (MSG_WIN)
*/
function parseMsgWin(buffer) {
var result = {};
{ /* reading result (MsgWin) */
result.player = buffer.nextU8();
result.type = buffer.nextI8();
}
result.msgtype = 'MSG_WIN';
return result;
}
/**
* parse bytes as MsgWaiting (MSG_WAITING)
*/
function parseMsgWaiting(_buffer) {
var result = {};
{ /* reading result (MsgWaiting) */
}
result.msgtype = 'MSG_WAITING';
return result;
}
/**
* parse bytes as MsgStart (MSG_START)
*/
function parseMsgStart(buffer) {
var result = {};
{ /* reading result (MsgStart) */
result.player_type = buffer.nextU8();
var start_lp = [];
for (var i = 0; i !== 2; ++i) {
var start_lp1 = buffer.nextI32();
start_lp.push(start_lp1);
}
result.start_lp = start_lp;
var deck_count = [];
for (var i = 0; i !== 2; ++i) {
var deck_count1 = {};
{ /* reading deck_count1 (DeckCount) */
deck_count1.main_deck = buffer.nextI16();
deck_count1.extra_deck = buffer.nextI16();
}
deck_count.push(deck_count1);
}
result.deck_count = deck_count;
}
result.msgtype = 'MSG_START';
return result;
}
/* */
function parseInfoLocation(buffer) {
var info = {};
info.controller = buffer.nextU8();
info.location = buffer.nextU8();
info.sequence = buffer.nextU8();
info.position = buffer.nextU8();
return info;
}
function parseInfoLocations(buffer) {
var many = [];
var count = buffer.nextU32();
for (var i = 0; i !== count; ++i) {
many.push(parseInfoLocation(buffer));
}
return many;
}
function parseChunks(buffer) {
var chunks = [];
while (!buffer.finished()) {
var bytes = buffer.nextU32();
if (bytes === 4)
continue;
var chunk = {};
var flags = buffer.nextU32();
chunk.query_flag = flags;
if (flags & exports.QUERY.CODE)
chunk.code = buffer.nextU32();
if (flags & exports.QUERY.POSITION)
chunk.info = parseInfoLocation(buffer);
if (flags & exports.QUERY.ALIAS)
chunk.alias = buffer.nextU32();
if (flags & exports.QUERY.TYPE)
chunk.type = buffer.nextU32();
if (flags & exports.QUERY.LEVEL)
chunk.level = buffer.nextU32();
if (flags & exports.QUERY.RANK)
chunk.rank = buffer.nextU32();
if (flags & exports.QUERY.ATTRIBUTE)
chunk.attribute = buffer.nextU32();
if (flags & exports.QUERY.RACE)
chunk.race = buffer.nextU32();
if (flags & exports.QUERY.ATTACK)
chunk.attack = buffer.nextI32();
if (flags & exports.QUERY.DEFENSE)
chunk.defense = buffer.nextI32();
if (flags & exports.QUERY.BASE_ATTACK)
chunk.base_attack = buffer.nextI32();
if (flags & exports.QUERY.BASE_DEFENSE)
chunk.base_defense = buffer.nextI32();
if (flags & exports.QUERY.REASON)
chunk.reason = buffer.nextI32();
if (flags & exports.QUERY.REASON_CARD)
chunk.reason_card = parseInfoLocation(buffer);
if (flags & exports.QUERY.EQUIP_CARD)
chunk.equip_card = parseInfoLocation(buffer);
if (flags & exports.QUERY.TARGET_CARD)
chunk.target_cards = parseInfoLocations(buffer);
if (flags & exports.QUERY.OVERLAY_CARD) {
var count = buffer.nextU32();
for (var i = 0; i !== count; ++i)
chunk.overlay_cards.push(buffer.nextU32());
}
if (flags & exports.QUERY.COUNTERS) {
var count = buffer.nextU32();
for (var i = 0; i !== count; ++i) {
var type = buffer.nextU16();
var count_1 = buffer.nextU16();
chunk.counters.push({ type: type, count: count_1 });
}
}
if (flags & exports.QUERY.OWNER)
chunk.owner = buffer.nextU32();
if (flags & exports.QUERY.STATUS)
chunk.status = buffer.nextU32();
if (flags & exports.QUERY.LSCALE)
chunk.lscale = buffer.nextU32();
if (flags & exports.QUERY.RSCALE)
chunk.rscale = buffer.nextU32();
if (flags & exports.QUERY.LINK)
chunk.link = buffer.nextU32();
if (flags & exports.QUERY.LINK)
chunk.link_marker = buffer.nextU32();
chunks.push(chunk);
}
return chunks;
}
/**
* MSG_UPDATE_DATA
*/
function parseMsgUpdateData(buffer) {
var result = {};
result.msgtype = 'MSG_UPDATE_DATA';
result.player = buffer.nextU8();
result.location = buffer.nextU8();
result.cards = parseChunks(buffer);
return result;
}
function parseFieldCardQueryResult(buffer) {
return parseChunks(new BufferReader(buffer));
}
exports.parseFieldCardQueryResult = parseFieldCardQueryResult;
/**
* MSG_UPDATE_CARD
*/
function parseMsgUpdateCard(buffer) {
var result = {};
result.msgtype = 'MSG_UPDATE_CARD';
result.player = buffer.nextU8();
result.location = buffer.nextU8();
result.sequence = buffer.nextU8();
var chunk = parseChunks(buffer);
return __assign({}, result, chunk[0]);
}
function parseCardQueryResult(buffer) {
return parseChunks(new BufferReader(buffer))[0];
}
exports.parseCardQueryResult = parseCardQueryResult;
/**
* parse bytes as MsgSelectBattleCmd (MSG_SELECT_BATTLECMD)
*/
function parseMsgSelectBattleCmd(buffer) {
var result = {};
{ /* reading result (MsgSelectBattleCmd) */
result.player = buffer.nextU8();
var activatable = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var activatable1 = {};
{ /* reading activatable1 (Activatable) */
activatable1.code_and_flags = buffer.nextU32();
activatable1.controller = buffer.nextU8();
activatable1.location = buffer.nextU8();
activatable1.sequence = buffer.nextU8();
activatable1.description = buffer.nextI32();
}
activatable.push(activatable1);
}
result.activatable = activatable;
var attackable = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var attackable1 = {};
{ /* reading attackable1 (Attackable) */
attackable1.code = buffer.nextU32();
attackable1.controller = buffer.nextU8();
attackable1.location = buffer.nextU8();
attackable1.sequence = buffer.nextU8();
attackable1.directly = buffer.nextI8();
}
attackable.push(attackable1);
}
result.attackable = attackable;
result.to_main_phase2 = buffer.nextI8();
result.to_end_phase = buffer.nextI8();
}
result.msgtype = 'MSG_SELECT_BATTLECMD';
return result;
}
/**
* parse bytes as MsgSelectIdleCmd (MSG_SELECT_IDLECMD)
*/
function parseMsgSelectIdleCmd(buffer) {
var result = {};
{ /* reading result (MsgSelectIdleCmd) */
result.player = buffer.nextU8();
var summonables = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var summonables1 = {};
{ /* reading summonables1 (IdleCommandSelection) */
summonables1.code = buffer.nextU32();
summonables1.controller = buffer.nextU8();
summonables1.location = buffer.nextU8();
summonables1.sequence = buffer.nextU8();
}
summonables.push(summonables1);
}
result.summonables = summonables;
var special_summonables = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var special_summonables1 = {};
{ /* reading special_summonables1 (IdleCommandSelection) */
special_summonables1.code = buffer.nextU32();
special_summonables1.controller = buffer.nextU8();
special_summonables1.location = buffer.nextU8();
special_summonables1.sequence = buffer.nextU8();
}
special_summonables.push(special_summonables1);
}
result.special_summonables = special_summonables;
var reposables = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var reposables1 = {};
{ /* reading reposables1 (IdleCommandSelection) */
reposables1.code = buffer.nextU32();
reposables1.controller = buffer.nextU8();
reposables1.location = buffer.nextU8();
reposables1.sequence = buffer.nextU8();
}
reposables.push(reposables1);
}
result.reposables = reposables;
var setable_monsters = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var setable_monsters1 = {};
{ /* reading setable_monsters1 (IdleCommandSelection) */
setable_monsters1.code = buffer.nextU32();
setable_monsters1.controller = buffer.nextU8();
setable_monsters1.location = buffer.nextU8();
setable_monsters1.sequence = buffer.nextU8();
}
setable_monsters.push(setable_monsters1);
}
result.setable_monsters = setable_monsters;
var setable_spells = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var setable_spells1 = {};
{ /* reading setable_spells1 (IdleCommandSelection) */
setable_spells1.code = buffer.nextU32();
setable_spells1.controller = buffer.nextU8();
setable_spells1.location = buffer.nextU8();
setable_spells1.sequence = buffer.nextU8();
}
setable_spells.push(setable_spells1);
}
result.setable_spells = setable_spells;
var activatables = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var activatables1 = {};
{ /* reading activatables1 (Activatable) */
activatables1.code = buffer.nextU32();
activatables1.controller = buffer.nextU8();
activatables1.location = buffer.nextU8();
activatables1.sequence = buffer.nextU8();
activatables1.description = buffer.nextI32();
}
activatables.push(activatables1);
}
result.activatables = activatables;
result.to_battle_phase = buffer.nextI8();
result.to_end_phase = buffer.nextI8();
result.shuffle_hand = buffer.nextI8();
}
result.msgtype = 'MSG_SELECT_IDLECMD';
return result;
}
/**
* parse bytes as MsgSelectEffectyn (MSG_SELECT_EFFECTYN)
*/
function parseMsgSelectEffectyn(buffer) {
var result = {};
{ /* reading result (MsgSelectEffectyn) */
result.player = buffer.nextU8();
result.code = buffer.nextU32();
result.controller = buffer.nextU8();
result.location = buffer.nextU8();
result.sequence = buffer.nextU8();
result.ignore = buffer.nextI8();
result.desc = buffer.nextI32();
}
result.msgtype = 'MSG_SELECT_EFFECTYN';
return result;
}
/**
* parse bytes as MsgSelectYesno (MSG_SELECT_YESNO)
*/
function parseMsgSelectYesno(buffer) {
var result = {};
{ /* reading result (MsgSelectYesno) */
result.player = buffer.nextU8();
result.desc = buffer.nextI32();
}
result.msgtype = 'MSG_SELECT_YESNO';
return result;
}
/**
* parse bytes as MsgSelectOption (MSG_SELECT_OPTION)
*/
function parseMsgSelectOption(buffer) {
var result = {};
{ /* reading result (MsgSelectOption) */
result.player = buffer.nextU8();
var options = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var options1 = buffer.nextI32();
options.push(options1);
}
result.options = options;
}
result.msgtype = 'MSG_SELECT_OPTION';
return result;
}
/**
* parse bytes as MsgSelectCard (MSG_SELECT_CARD)
*/
function parseMsgSelectCard(buffer) {
var result = {};
{ /* reading result (MsgSelectCard) */
result.player = buffer.nextU8();
result.non_cancelable = buffer.nextI8();
var range = {};
{ /* reading range (Range) */
range.minimal = buffer.nextI8();
range.maximal = buffer.nextI8();
}
result.range = range;
var selections = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var selections1 = {};
{ /* reading selections1 (Selection) */
selections1.code = buffer.nextU32();
selections1.controller = buffer.nextU8();
selections1.location = buffer.nextU8();
selections1.sequence = buffer.nextU8();
selections1.subsequence = buffer.nextU8();
}
selections.push(selections1);
}
result.selections = selections;
}
result.msgtype = 'MSG_SELECT_CARD';
return result;
}
/**
* parse bytes as MsgSelectUnselectCard (MSG_SELECT_UNSELECT_CARD)
*/
function parseMsgSelectUnselectCard(buffer) {
var result = {};
{ /* reading result (MsgSelectUnselectCard) */
result.player = buffer.nextU8();
result.should_continue = buffer.nextI8();
result.non_cancelable = buffer.nextI8();
var range = {};
{ /* reading range (Range) */
range.minimal = buffer.nextI8();
range.maximal = buffer.nextI8();
}
result.range = range;
var not_selected = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var not_selected1 = {};
{ /* reading not_selected1 (Selection) */
not_selected1.code = buffer.nextU32();
not_selected1.controller = buffer.nextU8();
not_selected1.location = buffer.nextU8();
not_selected1.sequence = buffer.nextU8();
not_selected1.subsequence = buffer.nextU8();
}
not_selected.push(not_selected1);
}
result.not_selected = not_selected;
var selected = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var selected1 = {};
{ /* reading selected1 (Selection) */
selected1.code = buffer.nextU32();
selected1.controller = buffer.nextU8();
selected1.location = buffer.nextU8();
selected1.sequence = buffer.nextU8();
selected1.subsequence = buffer.nextU8();
}
selected.push(selected1);
}
result.selected = selected;
}
result.msgtype = 'MSG_SELECT_UNSELECT_CARD';
return result;
}
/**
* parse bytes as MsgSelectChain (MSG_SELECT_CHAIN)
*/
function parseMsgSelectChain(buffer) {
var result = {};
{ /* reading result (MsgSelectChain) */
result.player = buffer.nextU8();
var c1 = buffer.nextI8();
/* c1: hidden */
result.spe_count = buffer.nextI8();
result.forced = buffer.nextI8();
result.hint0 = buffer.nextI32();
result.hint1 = buffer.nextI32();
var activatables = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = c1; i !== n; ++i) {
var activatables1 = {};
{ /* reading activatables1 (Activatable) */
activatables1.flag = buffer.nextI8();
activatables1.code = buffer.nextU32();
activatables1.controller = buffer.nextU8();
activatables1.location = buffer.nextU8();
activatables1.sequence = buffer.nextU8();
activatables1.subsequence = buffer.nextU8();
activatables1.desc = buffer.nextI32();
}
activatables.push(activatables1);
}
result.activatables = activatables;
}
result.msgtype = 'MSG_SELECT_CHAIN';
return result;
}
/**
* parse bytes as MsgSelectPlace (MSG_SELECT_PLACE)
*/
function parseMsgSelectPlace(buffer) {
var result = {};
{ /* reading result (MsgSelectPlace) */
result.player = buffer.nextU8();
result.minimal_selection = buffer.nextI8();
result.pattern = buffer.nextU32();
}
result.msgtype = 'MSG_SELECT_PLACE';
return result;
}
/**
* parse bytes as MsgSelectDisfield (MSG_SELECT_DISFIELD)
*/
function parseMsgSelectDisfield(buffer) {
var result = {};
{ /* reading result (MsgSelectDisfield) */
result.player = buffer.nextU8();
result.minimal_selection = buffer.nextI8();
result.pattern = buffer.nextU32();
}
result.msgtype = 'MSG_SELECT_DISFIELD';
return result;
}
/**
* parse bytes as MsgSelectPosition (MSG_SELECT_POSITION)
*/
function parseMsgSelectPosition(buffer) {
var result = {};
{ /* reading result (MsgSelectPosition) */
result.player = buffer.nextU8();
result.code = buffer.nextU32();
result.positions = buffer.nextU8();
}
result.msgtype = 'MSG_SELECT_POSITION';
return result;
}
/**
* parse bytes as MsgSelectTribute (MSG_SELECT_TRIBUTE)
*/
function parseMsgSelectTribute(buffer) {
var result = {};
{ /* reading result (MsgSelectTribute) */
result.player = buffer.nextU8();
result.non_cancelable = buffer.nextI8();
var range = {};
{ /* reading range (Range) */
range.minimal = buffer.nextI8();
range.maximal = buffer.nextI8();
}
result.range = range;
var selections = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var selections1 = {};
{ /* reading selections1 (Selection) */
selections1.code = buffer.nextU32();
selections1.controller = buffer.nextU8();
selections1.location = buffer.nextU8();
selections1.sequence = buffer.nextU8();
selections1.operation_param = buffer.nextI8();
}
selections.push(selections1);
}
result.selections = selections;
}
result.msgtype = 'MSG_SELECT_TRIBUTE';
return result;
}
/**
* parse bytes as MsgSelectCounter (MSG_SELECT_COUNTER)
*/
function parseMsgSelectCounter(buffer) {
var result = {};
{ /* reading result (MsgSelectCounter) */
result.player = buffer.nextU8();
result.type = buffer.nextI16();
result.count = buffer.nextI16();
var selections = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var selections1 = {};
{ /* reading selections1 (Selection) */
selections1.code = buffer.nextU32();
selections1.controller = buffer.nextU8();
selections1.location = buffer.nextU8();
selections1.sequence = buffer.nextU8();
selections1.operation_param = buffer.nextI16();
}
selections.push(selections1);
}
result.selections = selections;
}
result.msgtype = 'MSG_SELECT_COUNTER';
return result;
}
/**
* parse bytes as MsgSelectSum (MSG_SELECT_SUM)
*/
function parseMsgSelectSum(buffer) {
var result = {};
{ /* reading result (MsgSelectSum) */
result.select_mode = buffer.nextI8();
result.player = buffer.nextU8();
result.sum_up_to = buffer.nextI32();
var range = {};
{ /* reading range (Range) */
range.minimal = buffer.nextI8();
range.maximal = buffer.nextI8();
}
result.range = range;
var includes = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var includes1 = {};
{ /* reading includes1 (Selection) */
includes1.code = buffer.nextU32();
includes1.controller = buffer.nextU8();
includes1.location = buffer.nextU8();
includes1.sequence = buffer.nextU8();
includes1.value = buffer.nextI32();
}
includes.push(includes1);
}
result.includes = includes;
var optionals = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var optionals1 = {};
{ /* reading optionals1 (Selection) */
optionals1.code = buffer.nextU32();
optionals1.controller = buffer.nextU8();
optionals1.location = buffer.nextU8();
optionals1.sequence = buffer.nextU8();
optionals1.value = buffer.nextI32();
}
optionals.push(optionals1);
}
result.optionals = optionals;
}
result.msgtype = 'MSG_SELECT_SUM';
return result;
}
/**
* parse bytes as MsgSortCard (MSG_SORT_CARD)
*/
function parseMsgSortCard(buffer) {
var result = {};
{ /* reading result (MsgSortCard) */
result.player = buffer.nextU8();
var selection = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var selection1 = {};
{ /* reading selection1 (Selection) */
selection1.code = buffer.nextU32();
selection1.controller = buffer.nextU8();
selection1.location = buffer.nextU8();
selection1.sequence = buffer.nextU8();
}
selection.push(selection1);
}
result.selection = selection;
}
result.msgtype = 'MSG_SORT_CARD';
return result;
}
/**
* parse bytes as MsgSortChain (MSG_SORT_CHAIN)
*/
function parseMsgSortChain(buffer) {
var result = {};
{ /* reading result (MsgSortChain) */
result.player = buffer.nextU8();
var selection = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var selection1 = {};
{ /* reading selection1 (Selection) */
selection1.code = buffer.nextU32();
selection1.controller = buffer.nextU8();
selection1.location = buffer.nextU8();
selection1.sequence = buffer.nextU8();
}
selection.push(selection1);
}
result.selection = selection;
}
result.msgtype = 'MSG_SORT_CHAIN';
return result;
}
/**
* parse bytes as MsgConfirmDeckTop (MSG_CONFIRM_DECKTOP)
*/
function parseMsgConfirmDeckTop(buffer) {
var result = {};
{ /* reading result (MsgConfirmDeckTop) */
result.player = buffer.nextU8();
var cards = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var cards1 = {};
{ /* reading cards1 (ConfirmCard) */
cards1.code = buffer.nextU32();
cards1.controller = buffer.nextU8();
cards1.location = buffer.nextU8();
cards1.sequence = buffer.nextU8();
}
cards.push(cards1);
}
result.cards = cards;
}
result.msgtype = 'MSG_CONFIRM_DECKTOP';
return result;
}
/**
* parse bytes as MsgConfirmExtratop (MSG_CONFIRM_EXTRATOP)
*/
function parseMsgConfirmExtratop(buffer) {
var result = {};
{ /* reading result (MsgConfirmExtratop) */
result.player = buffer.nextU8();
var cards = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var cards1 = {};
{ /* reading cards1 (ConfirmCard) */
cards1.code = buffer.nextU32();
cards1.controller = buffer.nextU8();
cards1.location = buffer.nextU8();
cards1.sequence = buffer.nextU8();
}
cards.push(cards1);
}
result.cards = cards;
}
result.msgtype = 'MSG_CONFIRM_EXTRATOP';
return result;
}
/**
* parse bytes as MsgConfirmCards (MSG_CONFIRM_CARDS)
*/
function parseMsgConfirmCards(buffer) {
var result = {};
{ /* reading result (MsgConfirmCards) */
result.player = buffer.nextU8();
var cards = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var cards1 = {};
{ /* reading cards1 (ConfirmCard) */
cards1.code = buffer.nextU32();
cards1.controller = buffer.nextU8();
cards1.location = buffer.nextU8();
cards1.sequence = buffer.nextU8();
}
cards.push(cards1);
}
result.cards = cards;
}
result.msgtype = 'MSG_CONFIRM_CARDS';
return result;
}
/**
* parse bytes as MsgShuffleDeck (MSG_SHUFFLE_DECK)
*/
function parseMsgShuffleDeck(buffer) {
var result = {};
{ /* reading result (MsgShuffleDeck) */
result.player = buffer.nextU8();
}
result.msgtype = 'MSG_SHUFFLE_DECK';
return result;
}
/**
* parse bytes as MsgRefreshDeck (MSG_REFRESH_DECK)
*/
function parseMsgRefreshDeck(buffer) {
var result = {};
{ /* reading result (MsgRefreshDeck) */
result.player = buffer.nextU8();
}
result.msgtype = 'MSG_REFRESH_DECK';
return result;
}
/**
* parse bytes as MsgSwapGraveDeck (MSG_SWAP_GRAVE_DECK)
*/
function parseMsgSwapGraveDeck(buffer) {
var result = {};
{ /* reading result (MsgSwapGraveDeck) */
result.player = buffer.nextU8();
}
result.msgtype = 'MSG_SWAP_GRAVE_DECK';
return result;
}
/**
* parse bytes as MsgNewTurn (MSG_NEW_TURN)
*/
function parseMsgNewTurn(buffer) {
var result = {};
{ /* reading result (MsgNewTurn) */
result.player = buffer.nextU8();
}
result.msgtype = 'MSG_NEW_TURN';
return result;
}
/**
* parse bytes as MsgShuffleHand (MSG_SHUFFLE_HAND)
*/
function parseMsgShuffleHand(buffer) {
var result = {};
{ /* reading result (MsgShuffleHand) */
result.player = buffer.nextU8();
var cards = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var cards1 = buffer.nextU32();
cards.push(cards1);
}
result.cards = cards;
}
result.msgtype = 'MSG_SHUFFLE_HAND';
return result;
}
/**
* parse bytes as MsgShuffleExtra (MSG_SHUFFLE_EXTRA)
*/
function parseMsgShuffleExtra(buffer) {
var result = {};
{ /* reading result (MsgShuffleExtra) */
result.player = buffer.nextU8();
var cards = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var cards1 = buffer.nextU32();
cards.push(cards1);
}
result.cards = cards;
}
result.msgtype = 'MSG_SHUFFLE_EXTRA';
return result;
}
/**
* parse bytes as MsgDraw (MSG_DRAW)
*/
function parseMsgDraw(buffer) {
var result = {};
{ /* reading result (MsgDraw) */
result.player = buffer.nextU8();
var cards = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var cards1 = buffer.nextU32();
cards.push(cards1);
}
result.cards = cards;
}
result.msgtype = 'MSG_DRAW';
return result;
}
/**
* parse bytes as MsgReverseDeck (MSG_REVERSE_DECK)
*/
function parseMsgReverseDeck(_buffer) {
var result = {};
{ /* reading result (MsgReverseDeck) */
}
result.msgtype = 'MSG_REVERSE_DECK';
return result;
}
/**
* parse bytes as MsgDeckTop (MSG_DECK_TOP)
*/
function parseMsgDeckTop(buffer) {
var result = {};
{ /* reading result (MsgDeckTop) */
result.player = buffer.nextU8();
result.sequence = buffer.nextU8();
result.code = buffer.nextU32();
}
result.msgtype = 'MSG_DECK_TOP';
return result;
}
/**
* parse bytes as MsgShuffleSetCard (MSG_SHUFFLE_SET_CARD)
*/
function parseMsgShuffleSetCard(buffer) {
var result = {};
{ /* reading result (MsgShuffleSetCard) */
result.location = buffer.nextU8();
var c1 = buffer.nextI8();
/* c1: hidden */
var pass1 = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = c1; i !== n; ++i) {
var pass11 = {};
{ /* reading pass11 (Pass) */
pass11.controller = buffer.nextU8();
pass11.location = buffer.nextU8();
pass11.sequence = buffer.nextU8();
pass11.ignore = buffer.nextI8();
}
pass1.push(pass11);
}
result.pass1 = pass1;
var pass2 = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = c1; i !== n; ++i) {
var pass21 = {};
{ /* reading pass21 (Pass) */
pass21.controller = buffer.nextU8();
pass21.location = buffer.nextU8();
pass21.sequence = buffer.nextU8();
pass21.ignore = buffer.nextI8();
}
pass2.push(pass21);
}
result.pass2 = pass2;
}
result.msgtype = 'MSG_SHUFFLE_SET_CARD';
return result;
}
/**
* parse bytes as MsgNewPhase (MSG_NEW_PHASE)
*/
function parseMsgNewPhase(buffer) {
var result = {};
{ /* reading result (MsgNewPhase) */
result.phase = buffer.nextU16();
}
result.msgtype = 'MSG_NEW_PHASE';
return result;
}
/**
* parse bytes as MsgMove (MSG_MOVE)
*/
function parseMsgMove(buffer) {
var result = {};
{ /* reading result (MsgMove) */
result.code = buffer.nextU32();
var previous = {};
{ /* reading previous (Card) */
previous.controller = buffer.nextU8();
previous.location = buffer.nextU8();
previous.sequence = buffer.nextU8();
previous.position = buffer.nextU8();
}
result.previous = previous;
var current = {};
{ /* reading current (Card) */
current.controller = buffer.nextU8();
current.location = buffer.nextU8();
current.sequence = buffer.nextU8();
current.position = buffer.nextU8();
}
result.current = current;
result.reason = buffer.nextI32();
}
result.msgtype = 'MSG_MOVE';
return result;
}
/**
* parse bytes as MsgPosChange (MSG_POS_CHANGE)
*/
function parseMsgPosChange(buffer) {
var result = {};
{ /* reading result (MsgPosChange) */
result.code = buffer.nextU32();
result.current_controller = buffer.nextU8();
result.current_location = buffer.nextU8();
result.current_sequence = buffer.nextU8();
result.previous_position = buffer.nextU8();
result.current_position = buffer.nextU8();
}
result.msgtype = 'MSG_POS_CHANGE';
return result;
}
/**
* parse bytes as MsgSet (MSG_SET)
*/
function parseMsgSet(buffer) {
var result = {};
{ /* reading result (MsgSet) */
result.code = buffer.nextU32();
result.controller = buffer.nextU8();
result.location = buffer.nextU8();
result.sequence = buffer.nextU8();
result.position = buffer.nextU8();
}
result.msgtype = 'MSG_SET';
return result;
}
/**
* parse bytes as MsgSwap (MSG_SWAP)
*/
function parseMsgSwap(buffer) {
var result = {};
{ /* reading result (MsgSwap) */
var first = {};
{ /* reading first (Swapping) */
first.code = buffer.nextU32();
first.controller = buffer.nextU8();
first.location = buffer.nextU8();
first.sequence = buffer.nextU8();
first.position = buffer.nextU8();
}
result.first = first;
var second = {};
{ /* reading second (Swapping) */
second.code = buffer.nextU32();
second.controller = buffer.nextU8();
second.location = buffer.nextU8();
second.sequence = buffer.nextU8();
second.position = buffer.nextU8();
}
result.second = second;
}
result.msgtype = 'MSG_SWAP';
return result;
}
/**
* parse bytes as MsgFieldDisabled (MSG_FIELD_DISABLED)
*/
function parseMsgFieldDisabled(buffer) {
var result = {};
{ /* reading result (MsgFieldDisabled) */
result.pattern = buffer.nextU32();
}
result.msgtype = 'MSG_FIELD_DISABLED';
return result;
}
/**
* parse bytes as MsgSummoning (MSG_SUMMONING)
*/
function parseMsgSummoning(buffer) {
var result = {};
{ /* reading result (MsgSummoning) */
result.code = buffer.nextU32();
result.controller = buffer.nextU8();
result.location = buffer.nextU8();
result.sequence = buffer.nextU8();
result.position = buffer.nextU8();
}
result.msgtype = 'MSG_SUMMONING';
return result;
}
/**
* parse bytes as MsgSpsummoning (MSG_SPSUMMONING)
*/
function parseMsgSpsummoning(buffer) {
var result = {};
{ /* reading result (MsgSpsummoning) */
result.code = buffer.nextU32();
result.controller = buffer.nextU8();
result.location = buffer.nextU8();
result.sequence = buffer.nextU8();
result.position = buffer.nextU8();
}
result.msgtype = 'MSG_SPSUMMONING';
return result;
}
/**
* parse bytes as MsgFlipsummoning (MSG_FLIPSUMMONING)
*/
function parseMsgFlipsummoning(buffer) {
var result = {};
{ /* reading result (MsgFlipsummoning) */
result.code = buffer.nextU32();
result.controller = buffer.nextU8();
result.location = buffer.nextU8();
result.sequence = buffer.nextU8();
result.position = buffer.nextU8();
}
result.msgtype = 'MSG_FLIPSUMMONING';
return result;
}
/**
* parse bytes as MsgSummoned (MSG_SUMMONED)
*/
function parseMsgSummoned(_buffer) {
var result = {};
{ /* reading result (MsgSummoned) */
}
result.msgtype = 'MSG_SUMMONED';
return result;
}
/**
* parse bytes as MsgSpsummoned (MSG_SPSUMMONED)
*/
function parseMsgSpsummoned(_buffer) {
var result = {};
{ /* reading result (MsgSpsummoned) */
}
result.msgtype = 'MSG_SPSUMMONED';
return result;
}
/**
* parse bytes as MsgFlipsummoned (MSG_FLIPSUMMONED)
*/
function parseMsgFlipsummoned(_buffer) {
var result = {};
{ /* reading result (MsgFlipsummoned) */
}
result.msgtype = 'MSG_FLIPSUMMONED';
return result;
}
/**
* parse bytes as MsgChaining (MSG_CHAINING)
*/
function parseMsgChaining(buffer) {
var result = {};
{ /* reading result (MsgChaining) */
result.code = buffer.nextU32();
result.previous_controller = buffer.nextU8();
result.previous_location = buffer.nextU8();
result.previous_sequence = buffer.nextU8();
result.subsequence = buffer.nextU8();
result.controller = buffer.nextU8();
result.location = buffer.nextU8();
result.sequence = buffer.nextU8();
result.desc = buffer.nextI32();
result.param = buffer.nextI8();
}
result.msgtype = 'MSG_CHAINING';
return result;
}
/**
* parse bytes as MsgChained (MSG_CHAINED)
*/
function parseMsgChained(buffer) {
var result = {};
{ /* reading result (MsgChained) */
result.param = buffer.nextI8();
}
result.msgtype = 'MSG_CHAINED';
return result;
}
/**
* parse bytes as MsgChainSolving (MSG_CHAIN_SOLVING)
*/
function parseMsgChainSolving(buffer) {
var result = {};
{ /* reading result (MsgChainSolving) */
result.param = buffer.nextI8();
}
result.msgtype = 'MSG_CHAIN_SOLVING';
return result;
}
/**
* parse bytes as MsgChainSolved (MSG_CHAIN_SOLVED)
*/
function parseMsgChainSolved(buffer) {
var result = {};
{ /* reading result (MsgChainSolved) */
result.param = buffer.nextI8();
}
result.msgtype = 'MSG_CHAIN_SOLVED';
return result;
}
/**
* parse bytes as MsgChainNegated (MSG_CHAIN_NEGATED)
*/
function parseMsgChainNegated(buffer) {
var result = {};
{ /* reading result (MsgChainNegated) */
result.param = buffer.nextI8();
}
result.msgtype = 'MSG_CHAIN_NEGATED';
return result;
}
/**
* parse bytes as MsgChainDisabled (MSG_CHAIN_DISABLED)
*/
function parseMsgChainDisabled(buffer) {
var result = {};
{ /* reading result (MsgChainDisabled) */
result.param = buffer.nextI8();
}
result.msgtype = 'MSG_CHAIN_DISABLED';
return result;
}
/**
* parse bytes as MsgChainEnd (MSG_CHAIN_END)
*/
function parseMsgChainEnd(_buffer) {
var result = {};
{ /* reading result (MsgChainEnd) */
}
result.msgtype = 'MSG_CHAIN_END';
return result;
}
/**
* parse bytes as MsgCardSelected (MSG_CARD_SELECTED)
*/
function parseMsgCardSelected(_buffer) {
var result = {};
{ /* reading result (MsgCardSelected) */
}
result.msgtype = 'MSG_CARD_SELECTED';
return result;
}
/**
* parse bytes as MsgBecomeTarget (MSG_BECOME_TARGET)
*/
function parseMsgBecomeTarget(buffer) {
var result = {};
{ /* reading result (MsgBecomeTarget) */
var cards = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var cards1 = {};
{ /* reading cards1 (Card) */
cards1.controller = buffer.nextU8();
cards1.location = buffer.nextU8();
cards1.sequence = buffer.nextU8();
cards1.subsequence = buffer.nextU8();
}
cards.push(cards1);
}
result.cards = cards;
}
result.msgtype = 'MSG_BECOME_TARGET';
return result;
}
/**
* parse bytes as MsgRandomSelected (MSG_RANDOM_SELECTED)
*/
function parseMsgRandomSelected(buffer) {
var result = {};
{ /* reading result (MsgRandomSelected) */
result.player = buffer.nextU8();
var cards = [];
// tslint:disable-next-line:one-variable-per-declaration
for (var i = 0, n = buffer.nextU8(); i !== n; ++i) {
var cards1 = {};
{ /* reading cards1 (Card) */
cards1.controller = buffer.nextU8();
cards1.location = buffer.nextU8();
cards1.sequence = buffer.nextU8();
cards1.subsequence = buffer.nextU8();
}
cards.push(cards1);
}
result.cards = cards;
}
result.msgtype = 'MSG_RANDOM_SELECTED';
return result;
}
/**
* parse bytes as MsgDamage (MSG_DAMAGE)
*/
function parseMsgDamage(buffer) {
var result = {};
{ /* reading result (MsgDamage) */
result.player = buffer.nextU8();
result.value = buffer.nextI32();
}
result.msgtype = 'MSG_DAMAGE';
return result;
}
/**
* parse bytes as MsgRecover (MSG_RECOVER)
*/
function parseMsgRecover(buffer) {
var result = {};
{ /* reading result (MsgRecover) */
result.player = buffer.nextU8();
result.value = buffer.nextI32();
}
result.msgtype = 'MSG_RECOVER';
return result;
}
/**
* parse bytes as MsgLpUpdate (MSG_LPUPDATE)
*/
function parseMsgLpUpdate(buffer) {
var result = {};
{ /* reading result (MsgLpUpdate) */
result.player = buffer.nextU8();
result.value = buffer.nextI32();
}
result.msgtype = 'MSG_LPUPDATE';
return result;
}
/**
* parse bytes as MsgPayLpCost (MSG_PAY_LPCOST)
*/
function parseMsgPayLpCost(buffer) {
var result = {};
{ /* reading result (MsgPayLpCost) */
result.player = buffer.nextU8();
result.value = buffer.nextI32();
}
result.msgtype = 'MSG_PAY_LPCOST';
return result;
}
/**
* parse bytes as MsgEquip (MSG_EQUIP)
*/
function parseMsgEquip(buffer) {
var result = {};
{ /* reading result (MsgEquip) */
var card = {};
{ /* reading card (Card) */
card.controller = buffer.nextU8();
card.location = buffer.nextU8();
card.sequence = buffer.nextU8();
card.ignore = buffer.nextI8();
}
result.card = card;
var target = {};
{ /* reading target (Card) */
target.controller = buffer.nextU8();
target.location = buffer.nextU8();
target.sequence = buffer.nextU8();
target.ignore = buffer.nextI8();
}
result.target = target;
}
result.msgtype = 'MSG_EQUIP';
return result;
}
/**
* parse bytes as MsgCardTarget (MSG_CARD_TARGET)
*/
function parseMsgCardTarget(buffer) {
var result = {};
{ /* reading result (MsgCardTarget) */
var card = {};
{ /* reading card (Card) */
card.controller = buffer.nextU8();
card.location = buffer.nextU8();
card.sequence = buffer.nextU8();
card.ignore = buffer.nextI8();
}
result.card = card;
var target = {};
{ /* reading target (Card) */
target.controller = buffer.nextU8();
target.location = buffer.nextU8();
target.sequence = buffer.nextU8();
target.ignore = buffer.nextI8();
}
result.target = target;
}
result.msgtype = 'MSG_CARD_TARGET';
return result;
}
/**
* parse bytes as MsgCancelTarget (MSG_CANCEL_TARGET)
*/
function parseMsgCancelTarget(buffer) {
var result = {};
{ /* reading result (MsgCancelTarget) */
var card = {};
{ /* reading card (Card) */
card.controller = buffer.nextU8();
card.location = buffer.nextU8();
card.sequence = buffer.nextU8();
card.ignore = buffer.nextI8();
}
result.card = card;
var target = {};
{ /* reading target (Card) */
target.controller = buffer.nextU8();
target.location = buffer.nextU8();
target.sequence = buffer.nextU8();
target.ignore = buffer.nextI8();
}
result.target = target;
}
result.msgtype = 'MSG_CANCEL_TARGET';
return result;
}
/**
* parse bytes as MsgUnequip (MSG_UNEQUIP)
*/
function parseMsgUnequip(buffer) {
var result = {};
{ /* reading result (MsgUnequip) */
result.controller = buffer.nextU8();
result.location = buffer.nextU8();
result.sequence = buffer.nextU8();
result.ignore = buffer.nextI8();
}
result.msgtype = 'MSG_UNEQUIP';
return result;
}
/**
* parse bytes as MsgAddCounter (MSG_ADD_COUNTER)
*/
function parseMsgAddCounter(buffer) {
var result = {};
{ /* reading result (MsgAddCounter) */
result.type = buffer.nextI16();
result.controller = buffer.nextU8();
result.location = buffer.nextU8();
result.sequence = buffer.nextU8();
result.count = buffer.nextI16();
}
result.msgtype = 'MSG_ADD_COUNTER';
return result;
}
/**
* parse bytes as MsgRemoveCounter (MSG_REMOVE_COUNTER)
*/
function parseMsgRemoveCounter(buffer) {
var result = {};
{ /* reading result (MsgRemoveCounter) */
result.type = buffer.nextI16();
result.controller = buffer.nextU8();
result.location = buffer.nextU8();
result.sequence = buffer.nextU8();
result.count = buffer.nextI16();
}
result.msgtype = 'MSG_REMOVE_COUNTER';
return result;
}
/**
* parse bytes as MsgAttack (MSG_ATTACK)
*/
function parseMsgAttack(buffer) {
var result = {};
{ /* reading result (MsgAttack) */
var attacker = {};
{ /* reading attacker (Card) */
attacker.controller = buffer.nextU8();
attacker.location = buffer.nextU8();
attacker.sequence = buffer.nextU8();
attacker.ignore = buffer.nextI8();
}
result.attacker = attacker;
var defender = {};
{ /* reading defender (Card) */
defender.controller = buffer.nextU8();
defender.location = buffer.nextU8();
defender.sequence = buffer.nextU8();
defender.ignore = buffer.nextI8();
}
result.defender = defender;
}
result.msgtype = 'MSG_ATTACK';
return result;
}
/**
* parse bytes as MsgBattle (MSG_BATTLE)
*/
function parseMsgBattle(buffer) {
var result = {};
{ /* reading result (MsgBattle) */
var attacker = {};
{ /* reading attacker (Battle) */
attacker.controller = buffer.nextU8();
attacker.location = buffer.nextU8();
attacker.sequence = buffer.nextU8();
attacker.subsequence = buffer.nextU8();
attacker.atkvalue = buffer.nextI32();
attacker.defvalue = buffer.nextI32();
attacker.ignore = buffer.nextI8();
}
result.attacker = attacker;
var defender = {};
{ /* reading defender (Battle) */
defender.controller = buffer.nextU8();
defender.location = buffer.nextU8();
defender.sequence = buffer.nextU8();
defender.subsequence = buffer.nextU8();
defender.atkvalue = buffer.nextI32();
defender.defvalue = buffer.nextI32();
defender.ignore = buffer.nextI8();
}
result.defender = defender;
}
result.msgtype = 'MSG_BATTLE';
return result;
}
/**
* parse bytes as MsgAttackDisabled (MSG_ATTACK_DISABLED)
*/
function parseMsgAttackDisabled(_buffer) {
var result = {};
{ /* reading result (MsgAttackDisabled) */
}
result.msgtype = 'MSG_ATTACK_DISABLED';
return result;
}
/**
* parse bytes as MsgDamageStepStart (MSG_DAMAGE_STEP_START)
*/
function parseMsgDamageStepStart(_buffer) {
var result = {};
{ /* reading result (MsgDamageStepStart) */
}
result.msgtype = 'MSG_DAMAGE_STEP_START';
return result;
}
/**
* parse bytes as MsgDamageStepEnd (MSG_DAMAGE_STEP_END)
*/
function parseMsgDamageStepEnd(_buffer) {
var result = {};
{ /* reading result (MsgDamageStepEnd) */
}
result.msgtype = 'MSG_DAMAGE_STEP_END';
return result;
}
/**
* parse bytes as MsgMissedEffect (MSG_MISSED_EFFECT)
*/
function parseMsgMissedEffect(buffer) {
var result = {};
{ /* reading result (MsgMissedEffect) */
result.controller = buffer.nextU8();
result.location = buffer.nextU8();
result.sequence = buffer.nextU8();
result.subsequence = buffer.nextU8();
result.code = buffer.nextU32();
}
result.msgtype = 'MSG_MISSED_EFFECT';
return result;
}
/**
* parse bytes as MsgTossCoin (MSG_TOSS_COIN)
*/
function parseMsgTo