1
0
mirror of https://github.com/Rogiel/star-replay synced 2025-12-05 22:32:46 +00:00

Initial commit

This commit is contained in:
2016-01-18 21:16:10 -02:00
commit 6c6a46e1cb
237 changed files with 48572 additions and 0 deletions

56
.gitignore vendored Normal file
View File

@@ -0,0 +1,56 @@
# Created by .ignore support plugin (hsz.mobi)
### JetBrains template
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio
*.iml
## Directory-based project format:
.idea/
# if you remove the above rule, at least ignore the following:
# User-specific stuff:
# .idea/workspace.xml
# .idea/tasks.xml
# .idea/dictionaries
# Sensitive or high-churn files:
# .idea/dataSources.ids
# .idea/dataSources.xml
# .idea/sqlDataSources.xml
# .idea/dynamic.xml
# .idea/uiDesigner.xml
# Gradle:
# .idea/gradle.xml
# .idea/libraries
# Mongo Explorer plugin:
# .idea/mongoSettings.xml
## File-based project format:
*.ipr
*.iws
## Plugin-specific files:
# IntelliJ
/out/
# mpeltonen/sbt-idea plugin
.idea_modules/
# JIRA plugin
atlassian-ide-plugin.xml
# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
### Composer template
composer.phar
vendor/
# Commit your application's lock file http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file
# You may choose to ignore a library lock file http://getcomposer.org/doc/02-libraries.md#lock-file
composer.lock

3
.gitmodules vendored Normal file
View File

@@ -0,0 +1,3 @@
[submodule "s2protocol"]
path = s2protocol
url = https://github.com/Blizzard/s2protocol.git

10
.travis.yml Normal file
View File

@@ -0,0 +1,10 @@
language: php
php:
- '5.4'
- '5.5'
- '5.6'
- '7.0'
- hhvm
install:
- composer update

43
README.md Normal file
View File

@@ -0,0 +1,43 @@
# Star Replay
This library allows you to read StarCraft II replay files from PHP.
A object-oriented API is provided to browse through all metadata and events available on replays.
## Features
* Read .SC2Replay files from all public game versions (data is mined from [s2protocol](https://github.com/Blizzard/s2protocol))
* **Game events**: Streams events using PHP 5 generators
* **Lazy parsing**: Parses only structures you require
## Installation
The recommended way of installing this library is using Composer.
composer require "rogiel/star-replay"
This library uses [php-mpq](https://github.com/Rogiel/php-mpq) to parse and extract compressed information inside replays.
## Example
```php
use Rogiel\StarReplay\Replay;
use Rogiel\StarReplay\Event\Game\CameraSaveEvent;
$replay = new Replay('test.SC2Replay');
echo "Version: " . $replay->getHeader()->getVersion() . "\n";
echo "Map: " . $replay->getMatchInformation()->getTitle() . "\n";
echo "Players:\n";
foreach($replay->getPlayers() as $id => $player) {
echo "\tPlayer ".$id.": ".$player->getName()."\n";
}
echo "Camera hotkeys:\n";
foreach($replay->getGameEvents() as $timestamp => $event) {
if($event instanceof CameraSaveEvent) {
$player = $replay->getPlayers()->getPlayer($event->getHeader()->getUserID());
echo "\tPlayer ". $player->getName() ." saved a new camera #". $event->getWhich() ." at point ". $event->getTarget() ."\n";
}
// since we are using generators, the events will stream linearly from begining to end
}
```

51
bin/Template/Event.php Normal file
View File

@@ -0,0 +1,51 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\{Type};
class {Name} extends Abstract{Type}Event {{
{Fields}
/**
* @return string the event name
*/
public function getEventName() {{
return "{FullName}";
}}
/**
* @return string a string representation of the event
*/
public function __toString() {{
return $this->getEventName()."{{ {ToString} }}";
}}
{Getters}
}}

122
bin/Template/Version.php Normal file
View File

@@ -0,0 +1,122 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Version;
use Rogiel\StarReplay\Parser\Serializer\Tree\Tree;
use Rogiel\StarReplay\Parser\Serializer\Tree\Node\ArrayNode;
use Rogiel\StarReplay\Parser\Serializer\Tree\Node\BitArrayNode;
use Rogiel\StarReplay\Parser\Serializer\Tree\Node\BlobNode;
use Rogiel\StarReplay\Parser\Serializer\Tree\Node\BooleanNode;
use Rogiel\StarReplay\Parser\Serializer\Tree\Node\ChoiceNode;
use Rogiel\StarReplay\Parser\Serializer\Tree\Node\IntegerNode;
use Rogiel\StarReplay\Parser\Serializer\Tree\Node\FourCCNode;
use Rogiel\StarReplay\Parser\Serializer\Tree\Node\NullNode;
use Rogiel\StarReplay\Parser\Serializer\Tree\Node\OptionalNode;
use Rogiel\StarReplay\Parser\Serializer\Tree\Node\StructNode;
class Version{Version} extends AbstractVersion {{
public static $TREE;
public static $GAME_EVENT_MAPPING;
public static $MESSAGE_EVENT_MAPPING;
public static $TRACKER_EVENT_MAPPING;
public function getVersion() {{
return {Version};
}}
public function getTree() {{
return self::$TREE;
}}
public function getGameEventMapping() {{
return self::$GAME_EVENT_MAPPING;
}}
public function getMessageEventMapping() {{
return self::$MESSAGE_EVENT_MAPPING;
}}
public function getTrackerEventMapping() {{
return self::$TRACKER_EVENT_MAPPING;
}}
public function getReplayHeaderNode() {{
return self::$TREE->getNode({HeaderNode});
}}
public function getReplayInitDataNode() {{
return self::$TREE->getNode({InitDataNode});
}}
public function getGameDetailsNode() {{
return self::$TREE->getNode({GameDetailsNode});
}}
public function getGameEventHeaderNode() {{
return new StructNode(
[
'timestamp' => ['type' => {TimestampNode}],
'user' => ['type' => {UserNode}],
'event' => ['type' => {GameEventNode}]
],
'Rogiel\StarReplay\Metadata\Event\Header',
true
);
}}
public function getMessageEventHeaderNode() {{
return new StructNode(
[
'timestamp' => ['type' => {TimestampNode}],
'user' => ['type' => {UserNode}],
'event' => ['type' => {MessageEventNode}]
],
'Rogiel\StarReplay\Metadata\Event\Header',
true
);
}}
public function getTrackerEventHeaderNode() {{
return new StructNode(
[
'timestamp' => ['type' => {TimestampNode}],
'event' => ['type' => {TrackerEventNode}]
],
'Rogiel\StarReplay\Metadata\Event\Header',
true
);
}}
}}
Version{Version}::$TREE = new Tree({Tree});
Version{Version}::$GAME_EVENT_MAPPING = {GameEvents};
Version{Version}::$MESSAGE_EVENT_MAPPING = {MessageEvents};
Version{Version}::$TRACKER_EVENT_MAPPING = {TrackerEvents};

37
bin/Template/Versions.php Normal file
View File

@@ -0,0 +1,37 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Version;
class Versions {{
public static function getVersions() {{
return {Versions};
}}
}}

148
bin/class_mapping.py Normal file
View File

@@ -0,0 +1,148 @@
def find_struct_field(protocol, struct, field_name):
for field in struct[1][0]:
if field[0] == field_name:
return field
return None
def set_class(mapping, protocol, field, class_name):
if field == None:
return
if protocol.typeinfos[field[1]][0] == '_optional':
mapping[protocol.typeinfos[field[1]][0][1]] = class_name
mapping[field[1]] = class_name
def detect_class_types(protocol):
mapping = {}
mapping[protocol.replay_header_typeid] = 'Rogiel\StarReplay\Metadata\Header\Header'
replay_header = protocol.typeinfos[protocol.replay_header_typeid]
for f in replay_header[1][0]:
if f[0] == "m_version":
mapping[f[1]] = 'Rogiel\StarReplay\Metadata\Header\Version'
if f[0] == "m_ngdpRootKey":
mapping[f[1]] = 'Rogiel\StarReplay\Metadata\Header\Hash'
mapping[protocol.game_details_typeid] = 'Rogiel\StarReplay\Metadata\Match\MatchInformation'
game_info = protocol.typeinfos[protocol.game_details_typeid]
for f in game_info[1][0]:
if f[0] == "m_playerList":
playerList = f[1]
playerList = protocol.typeinfos[playerList][1][0]
mapping[playerList] = 'Rogiel\StarReplay\Metadata\Match\PlayerList'
playerList = protocol.typeinfos[playerList][1][1]
mapping[playerList] = 'Rogiel\StarReplay\Entity\Player'
for t in protocol.typeinfos[playerList][1][0]:
if t[0] == "m_toon":
mapping[t[1]] = 'Rogiel\StarReplay\Entity\Toon'
if t[0] == "m_color":
mapping[t[1]] = 'Rogiel\StarReplay\Entity\Color'
if f[0] == "m_thumbnail":
mapping[f[1]] = 'Rogiel\StarReplay\Entity\Thumbnail'
mapping[protocol.replay_initdata_typeid] = 'Rogiel\StarReplay\Metadata\Init\InitData'
game_info = protocol.typeinfos[protocol.replay_initdata_typeid]
for f in game_info[1][0]:
if f[0] == "m_syncLobbyState":
mapping[f[1]] = 'Rogiel\StarReplay\Metadata\Init\SyncLobbyState'
for t in protocol.typeinfos[f[1]][1][0]:
if t[0] == "m_userInitialData":
mapping[t[1]] = 'Rogiel\StarReplay\Metadata\Init\UserInitialDataCollection'
mapping[protocol.typeinfos[t[1]][1][1]] = 'Rogiel\StarReplay\Metadata\Init\UserInitialData'
if t[0] == "m_gameDescription":
mapping[t[1]] = 'Rogiel\StarReplay\Metadata\Init\GameDescription'
for r in protocol.typeinfos[t[1]][1][0]:
if r[0] == "m_gameOptions":
mapping[r[1]] = 'Rogiel\StarReplay\Metadata\Init\GameOptions'
if t[0] == "m_lobbyState":
mapping[t[1]] = 'Rogiel\StarReplay\Metadata\Init\LobbyState'
for index, type in enumerate(protocol.typeinfos):
if type[0] == '_struct':
for field in type[1][0]:
if field[0] == 'x':
mapping[index] = 'Rogiel\StarReplay\Entity\Point'
for event in protocol.game_event_types.iteritems():
event_name = event[1][1][11:]
mapping[event[1][0]] = 'Rogiel\StarReplay\Event\Game\{0}'.format(event_name)
if event_name == 'TriggerSoundLengthSyncEvent':
sync_info = find_struct_field(protocol, protocol.typeinfos[event[1][0]], 'm_syncInfo')
mapping[sync_info[1]] = 'Rogiel\StarReplay\Event\Game\Entity\SoundLengthSync'
if event_name == 'BankSignatureEvent':
signature = find_struct_field(protocol, protocol.typeinfos[event[1][0]], 'm_signature')
mapping[signature[1]] = 'Rogiel\StarReplay\Event\Game\Entity\BankSignature'
if event_name == 'ResourceRequestEvent':
resources = find_struct_field(protocol, protocol.typeinfos[event[1][0]], 'm_resources')
mapping[resources[1]] = 'Rogiel\StarReplay\Event\Game\Entity\ResourceRequest'
if event_name == 'SelectionDeltaEvent':
delta = find_struct_field(protocol, protocol.typeinfos[event[1][0]], 'm_delta')
struct = protocol.typeinfos[delta[1]]
mapping[delta[1]] = 'Rogiel\StarReplay\Event\Game\Entity\SelectionDelta'
m_addSubgroups = find_struct_field(protocol, struct, 'm_addSubgroups')
if m_addSubgroups:
list = protocol.typeinfos[m_addSubgroups[1]]
mapping[list[1][1]] = 'Rogiel\StarReplay\Event\Game\Entity\SubgroupUnit'
if event_name == 'ControlGroupUpdateEvent':
mask = find_struct_field(protocol, protocol.typeinfos[event[1][0]], 'm_mask')
mask = protocol.typeinfos[mask[1]]
if mask[0] == '_choice':
for choice in mask[1][1].iteritems():
if choice[1][0] == 'Mask':
mapping[choice[1][1]] = 'Rogiel\StarReplay\Event\Game\Entity\ControlGroupUpdateMask'
if choice[1][0] == 'OneIndices':
mapping[choice[1][1]] = 'Rogiel\StarReplay\Event\Game\Entity\ControlGroupUpdateOneIndices'
if choice[1][0] == 'ZeroIndices':
mapping[choice[1][1]] = 'Rogiel\StarReplay\Event\Game\Entity\ControlGroupUpdateZeroIndices'
# print protocol.typeinfos[mask[1]][1][0]
# mask = protocol.typeinfos[protocol.typeinfos[mask[1]][1][0]]
# if mask[0] == '_optional':
# print mask
# exit()
# for key, option in protocol.typeinfos[mask[1]][2].iteritems():
# print option
# exit()
if event_name == 'CmdEvent':
abil = find_struct_field(protocol, protocol.typeinfos[event[1][0]], 'm_abil')
if abil:
mapping[protocol.typeinfos[abil[1]][1][0]] = 'Rogiel\StarReplay\Event\Game\Entity\Ability'
data = find_struct_field(protocol, protocol.typeinfos[event[1][0]], 'm_data')
if data:
for i, opt in protocol.typeinfos[data[1]][1][1].iteritems():
if opt[0] == 'TargetUnit':
mapping[opt[1]] = 'Rogiel\StarReplay\Event\Game\Entity\TargetUnit'
for event in protocol.message_event_types.iteritems():
event_name = event[1][1][11:]
mapping[event[1][0]] = 'Rogiel\StarReplay\Event\Message\{0}'.format(event_name)
if hasattr(protocol, 'tracker_event_types'):
for event in protocol.tracker_event_types.iteritems():
if event[1][1] == "NNet.Replay.Tracker.SPlayerStatsEvent":
for type in protocol.typeinfos[event[1][0]][1][0]:
if type[0] == "m_stats":
mapping[type[1]] = 'Rogiel\StarReplay\Event\Tracker\PlayerStats'
if event[1][1] == "NNet.Replay.Tracker.SUnitPositionsEvent":
for type in protocol.typeinfos[event[1][0]][1][0]:
if type[0] == "m_items":
mapping[type[1]] = 'Rogiel\StarReplay\Event\Tracker\UnitPositions'
event_name = event[1][1][21:]
mapping[event[1][0]] = 'Rogiel\StarReplay\Event\Tracker\{0}'.format(event_name)
return mapping

167
bin/generator.py Executable file
View File

@@ -0,0 +1,167 @@
import glob
import os
import sys
import logging
import tree as tree_generator
import template as template_generator
import class_mapping
sys.path.append('../s2protocol/')
current_path = os.path.dirname(os.path.realpath(__file__))
output_directory = current_path + "/../src/Version"
all_versions = []
protocols = glob.glob("../s2protocol/protocol*.py")
for protocolFile in protocols:
protocolBaseName = os.path.basename(protocolFile)
protocolName = protocolBaseName[:-3]
version = protocolBaseName[8:-3]
all_versions.append(version)
protocol = __import__(protocolName)
classes = class_mapping.detect_class_types(protocol)
events = template_generator.generate_game_event_template(protocol)
message_events = template_generator.generate_message_event_template(protocol)
tracker_events = template_generator.generate_tracker_event_template(protocol)
tree = tree_generator.generate_tree(protocol, classes)
if hasattr(protocol, 'replay_userid_typeid'):
useridNode = protocol.replay_userid_typeid
else:
useridNode = protocol.replay_playerid_typeid
if hasattr(protocol, 'tracker_eventid_typeid'):
tracker_eventid_typeid = protocol.tracker_eventid_typeid
else:
tracker_eventid_typeid = 'NULL'
template_vars = {
'Version': version,
'Tree': tree,
'TimestampNode': protocol.svaruint32_typeid,
'UserNode': useridNode,
'GameEventNode': protocol.game_eventid_typeid,
'MessageEventNode': protocol.message_eventid_typeid,
'TrackerEventNode': tracker_eventid_typeid,
'GameEvents': events,
'MessageEvents': message_events,
'TrackerEvents': tracker_events,
'HeaderNode': protocol.replay_header_typeid,
'GameDetailsNode': protocol.game_details_typeid,
'InitDataNode': protocol.replay_initdata_typeid
}
if not os.path.exists(output_directory):
os.makedirs(output_directory)
template_generator.parse_template(current_path + "/Template/Version.php",
"{0}/Version{1}.php".format(output_directory, version), template_vars)
all_versions_generated = "[\n"
for version in all_versions:
all_versions_generated += "\t\t\t{0} => 'Rogiel\StarReplay\Version\Version{0}',\n".format(version)
all_versions_generated = all_versions_generated[:-2] + "\n\t\t]"
template_vars = {
'Versions': all_versions_generated,
}
template_generator.parse_template(current_path + "/Template/Versions.php", "{0}/Versions.php".format(output_directory), template_vars)
def extract_field_type(field):
field_type = classes.get(field)
if field_type:
field_type = "\\"+field_type
else:
field_type_struct = protocol.typeinfos[field]
if(field_type_struct[0] == '_int'):
field_type = "integer"
elif(field_type_struct[0] == '_blob'):
field_type = "string"
elif(field_type_struct[0] == '_array'):
field_type = "array"
elif(field_type_struct[0] == '_null'):
field_type = "null"
elif(field_type_struct[0] == '_bool'):
field_type = "boolean"
elif(field_type_struct[0] == '_struct'):
logging.warn("Non mapped struct: %s. Falling back to array.", field_type_struct)
field_type = "struct"
elif(field_type_struct[0] == '_choice'):
field_type = ""
for choice in protocol.typeinfos[field][1][1].iteritems():
field_type += "{0}|".format(extract_field_type(choice[1][1]))
field_type = field_type[:-1]
elif(field_type_struct[0] == '_optional'):
field_type = "null|{0}".format(extract_field_type(protocol.typeinfos[field][1][0]))
elif(field_type_struct[0] == '_bitarray'):
field_type = "integer"
elif(field_type_struct[0] == '_fourcc'):
field_type = "integer"
else:
logging.error("Unknown type for field: %s. Ignoring type mapping.", field_type_struct)
return field_type
def parse_event_template(event, type, prefix, input, output_directory):
event_name = event["event"][1][1][len(prefix):]
full_name = event["event"][1][1]
fields = ""
to_string = ""
getters = ""
for field in event["type"][1][0]:
field_name = field[0][2:]
camel_field_name = template_generator.capital_first_letter(field_name)
field_type = extract_field_type(field[1])
if field_type:
fields += "\t/** @var {0} */\n".format(field_type)
fields += "\tpublic ${0};\n\n".format(field_name)
# if protocol.typeinfos[field[1]][0] == '_array':
# exit()
to_string += "{0} = $this->{0}, ".format(field_name)
if field_type:
getters += "\t/** @return {0} */\n".format(field_type)
getters += "\tpublic function get{0}() {{ return $this->{1}; }}\n\n".format(camel_field_name, field_name)
template_vars = {
'Name': event_name,
'FullName': full_name,
'Type': type,
'Fields': fields.rstrip('\n'),
'ToString': to_string[:-2],
'Getters': getters.rstrip('\n')
}
template_generator.parse_template(input, "{0}/{1}.php".format(output_directory, event_name), template_vars)
for name, event in template_generator.all_game_events.iteritems():
current_path = os.path.dirname(os.path.realpath(__file__))
output_directory = current_path + "/../src/Event/Game"
if not os.path.exists(output_directory):
os.makedirs(output_directory)
parse_event_template(event, 'Game', 'NNet.Game.S', current_path + "/Template/Event.php", output_directory)
for name, event in template_generator.all_message_events.iteritems():
current_path = os.path.dirname(os.path.realpath(__file__))
output_directory = current_path + "/../src/Event/Message"
if not os.path.exists(output_directory):
os.makedirs(output_directory)
parse_event_template(event, 'Message', 'NNet.Game.S', current_path + "/Template/Event.php", output_directory)
for name, event in template_generator.all_tracker_events.iteritems():
current_path = os.path.dirname(os.path.realpath(__file__))
output_directory = current_path + "/../src/Event/Tracker"
if not os.path.exists(output_directory):
os.makedirs(output_directory)
parse_event_template(event, 'Tracker', 'NNet.Replay.Tracker.S', current_path + "/Template/Event.php", output_directory)

67
bin/template.py Normal file
View File

@@ -0,0 +1,67 @@
all_game_events = {}
def generate_game_event_template(protocol):
generated = "[\n"
for event in protocol.game_event_types.iteritems():
name = event[1][1][11:]
all_game_events[name] = {}
all_game_events[name]["event"] = event
all_game_events[name]["type"] = protocol.typeinfos[event[1][0]]
template_vars = {
'ID': event[0],
'Name': name,
'Node': event[1][0],
}
generated += "\t{ID} => {Node},\n".format(**template_vars)
generated += "]"
return generated
all_message_events = {}
def generate_message_event_template(protocol):
generated = "[\n"
for event in protocol.message_event_types.iteritems():
name = event[1][1][11:]
all_message_events[name] = {}
all_message_events[name]["event"] = event
all_message_events[name]["type"] = protocol.typeinfos[event[1][0]]
template_vars = {
'ID': event[0],
'Name': name,
'Node': event[1][0],
}
generated += "\t{ID} => {Node},\n".format(**template_vars)
generated += "]"
return generated
all_tracker_events = {}
def generate_tracker_event_template(protocol):
if hasattr(protocol, 'tracker_event_types'):
generated = "[\n"
for event in protocol.tracker_event_types.iteritems():
name = event[1][1][11:]
all_tracker_events[name] = {}
all_tracker_events[name]["event"] = event
all_tracker_events[name]["type"] = protocol.typeinfos[event[1][0]]
template_vars = {
'ID': event[0],
'Name': name,
'Node': event[1][0],
}
generated += "\t{ID} => {Node},\n".format(**template_vars)
generated += "]"
return generated
else:
return "NULL"
def parse_template(input_file, output_file, vars):
print(output_file)
with open(input_file, 'r') as ftemp:
templateString = ftemp.read()
with open(output_file, 'w') as f:
f.write(templateString.format(**vars))
def capital_first_letter(s):
return s[0].upper() + s[1:]

111
bin/tree.py Normal file
View File

@@ -0,0 +1,111 @@
def generate_integer(bounds, className):
generated = "new IntegerNode({0}, {1}".format(bounds[0][1], bounds[0][0])
if className:
generated += ", '{0}'".format(className)
return generated + ")"
def generate_choice(tagger, choices, className):
generated = "new ChoiceNode(new IntegerNode({0}), [\n".format(tagger[1])
for index, choice in choices.iteritems():
generated += "\t{tag} => {index},\n".format(tag = index, index = choice[1])
generated += "]"
if className:
generated += ", '{0}'".format(className)
return generated + ")"
def generate_struct(members, className):
generated = "new StructNode([\n"
for member in members[0]:
if member:
member_name = member[0]
if member_name.startswith('m_'):
member_name = member[0][2:]
generated += "\t\"{name}\" => array('type' => {index}, 'tag' => {tag}),\n".format(name = member_name, index = member[1], tag = member[2])
generated += "]"
if className:
generated += ",\n\t'{0}'\n".format(className)
generated += ")"
return generated
def generate_optional(bounds, className):
generated = "new OptionalNode({0}".format(bounds[0])
if className:
generated += ", '{0}'".format(className)
return generated + ")"
def generate_blob(bounds, className):
generated = "new BlobNode(new IntegerNode({0}, {1})".format(bounds[0][1], bounds[0][0])
if className:
generated += ", '{0}'".format(className)
return generated + ")"
def generate_bool(className):
generated = "new BooleanNode("
if className:
generated += ", '{0}'".format(className)
return generated + ")"
def generate_array(bounds, className):
generated = "new ArrayNode(\n"
generated += "\tnew IntegerNode({size}, {constant}),\n".format(size=bounds[0][1], constant=bounds[0][0])
generated += "\t{0}".format(bounds[1])
if className:
generated += ",\n\t'{0}'\n".format(className)
generated += "\n)"
return generated
def generate_bitarray(bounds, className):
generated = "new BitArrayNode(\n"
generated += "\tnew IntegerNode({size}, {constant})\n".format(size=bounds[0][1], constant=bounds[0][0])
if className:
generated += ",\n\t'{0}'".format(className)
generated += ")"
return generated
def generate_null(className):
return "new NullNode()"
def generate_fourcc(className):
generated = "new FourCCNode("
if className:
generated += ", '{0}'".format(className)
generated += ")"
return generated
def generate_tree(protocol, classes):
nodes = []
for index, typeinfo in enumerate(protocol.typeinfos):
if typeinfo[0] == "_int":
generated = generate_integer(typeinfo[1], classes.get(index))
elif typeinfo[0] == "_choice":
generated = generate_choice(typeinfo[1][0], typeinfo[1][1], classes.get(index))
elif typeinfo[0] == "_struct":
generated = generate_struct(typeinfo[1], classes.get(index))
elif typeinfo[0] == "_optional":
generated = generate_optional(typeinfo[1], classes.get(index))
elif typeinfo[0] == "_blob":
generated = generate_blob(typeinfo[1], classes.get(index))
elif typeinfo[0] == "_bool":
generated = generate_bool(classes.get(index))
elif typeinfo[0] == "_array":
generated = generate_array(typeinfo[1], classes.get(index))
elif typeinfo[0] == "_bitarray":
generated = generate_bitarray(typeinfo[1], classes.get(index))
elif typeinfo[0] == "_fourcc":
generated = generate_fourcc(classes.get(index))
elif typeinfo[0] == "_null":
generated = generate_null(classes.get(index))
else:
print "Node %s unknown!" % typeinfo[0]
exit()
nodes.append(generated)
tree = "[\n"
for index, node in enumerate(nodes):
tree += "{index} => {code},\n".format(index=index, code = node)
tree += "]\n"
return tree

31
composer.json Normal file
View File

@@ -0,0 +1,31 @@
{
"name": "rogiel/star-replay",
"type": "library",
"description": "A StarCraft II replay parser in PHP",
"keywords": ["StarCraft II", "Replay parsing", "Gaming", "Blizzard"],
"homepage": "https://rogiel.com/portfolio/star-replay",
"license": "BSD-2.0",
"authors": [{
"name": "Rogiel Sulzbach",
"email": "rogiel@rogiel.com",
"homepage": "https://rogiel.com"
}],
"autoload": {
"psr-4": {
"Rogiel\\StarReplay\\": "src/"
}
},
"autoload-dev": {
"psr-4": {
"Rogiel\\StarReplay\\Tests\\": "tests/"
}
},
"require": {
"php": "^5.5.0",
"rogiel/mpq": "dev-master",
"ocramius/generated-hydrator": "^1.2"
},
"require-dev": {
"phpunit/phpunit": "^4.8"
}
}

37
phpunit.xml Normal file
View File

@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Use this configuration file as a template to run the tests against any dbms.
Procedure:
1) Save a copy of this file with a name of your choosing. It doesn't matter
where you place it as long as you know where it is.
i.e. "mysqlconf.xml" (It needs the ending .xml).
2) Edit the file and fill in your settings (database name, type, username, etc.)
Just change the "value"s, not the names of the var elements.
3) To run the tests against the database type the following from within the
tests/ folder: phpunit -c <filename> ...
Example: phpunit -c mysqlconf.xml AllTests
-->
<phpunit backupGlobals="false"
backupStaticAttributes="false"
colors="true"
convertErrorsToExceptions="true"
convertNoticesToExceptions="true"
convertWarningsToExceptions="true"
processIsolation="false"
stopOnFailure="false"
syntaxCheck="false"
>
<testsuites>
<testsuite name="StarReplay Test Suite">
<directory>./tests</directory>
</testsuite>
</testsuites>
<filter>
<whitelist processUncoveredFilesFromWhitelist="true">
<directory suffix=".php">/src</directory>
</whitelist>
</filter>
</phpunit>

1
s2protocol Submodule

Submodule s2protocol added at d9973aacd0

View File

@@ -0,0 +1,34 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Entity;
class AbstractEntity implements Entity {
}

85
src/Entity/Color.php Normal file
View File

@@ -0,0 +1,85 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Entity;
class Color extends AbstractEntity {
private $a;
private $r;
private $g;
private $b;
/**
* @return mixed
*/
public function getAlpha() {
return $this->a;
}
/**
* @return mixed
*/
public function getRed() {
return $this->r;
}
/**
* @return mixed
*/
public function getGreen() {
return $this->g;
}
/**
* @return mixed
*/
public function getBlue() {
return $this->b;
}
public function toHTML() {
$r = intval($this->r);
$g = intval($this->g);
$b = intval($this->b);
$r = dechex($r<0?0:($r>255?255:$r));
$g = dechex($g<0?0:($g>255?255:$g));
$b = dechex($b<0?0:($b>255?255:$b));
$color = (strlen($r) < 2?'0':'').$r;
$color .= (strlen($g) < 2?'0':'').$g;
$color .= (strlen($b) < 2?'0':'').$b;
$color ='#'.$color;
return $color;
}
public function __toString() {
return $this->toHTML();
}
}

34
src/Entity/Entity.php Normal file
View File

@@ -0,0 +1,34 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Entity;
interface Entity {
}

169
src/Entity/Player.php Normal file
View File

@@ -0,0 +1,169 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Entity;
class Player extends AbstractEntity {
/**
* @var string
*/
private $name;
/**
* @var Toon
*/
private $toon;
/**
* @var string
*/
private $race;
/**
* @var Color
*/
private $color;
/**
* @var integer
*/
private $control;
/**
* @var integer
*/
private $teamId;
/**
* @var integer
*/
private $handicap;
/**
* @var boolean
*/
private $observe;
/**
* @var boolean
*/
private $result;
/**
* @var integer
*/
private $workingSetSlotId;
/**
* @var mixed
*/
private $hero;
/**
* @return string
*/
public function getName() {
return $this->name;
}
/**
* @return Toon
*/
public function getToon() {
return $this->toon;
}
/**
* @return string
*/
public function getRace() {
return $this->race;
}
/**
* @return Color
*/
public function getColor() {
return $this->color;
}
/**
* @return int
*/
public function getControl() {
return $this->control;
}
/**
* @return int
*/
public function getTeamId() {
return $this->teamId;
}
/**
* @return int
*/
public function getHandicap() {
return $this->handicap;
}
/**
* @return boolean
*/
public function isObserve() {
return $this->observe;
}
/**
* @return boolean
*/
public function isResult() {
return $this->result;
}
/**
* @return int
*/
public function getWorkingSetSlotId() {
return $this->workingSetSlotId;
}
/**
* @return mixed
*/
public function getHero() {
return $this->hero;
}
public function __toString() {
return "Player{ name = $this->name, race = $this->race, color = $this->color, teamID = $this->teamId }";
}
}

67
src/Entity/Point.php Normal file
View File

@@ -0,0 +1,67 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Entity;
class Point extends AbstractEntity {
private $x;
private $y;
private $z = NULL;
/**
* @return mixed
*/
public function getX() {
return $this->x;
}
/**
* @return mixed
*/
public function getY() {
return $this->y;
}
/**
* @return mixed
*/
public function getZ() {
return $this->z;
}
public function __toString() {
if($this->z === NULL) {
return "Point{ x = $this->x, y = $this->y }";
} else {
return "Point{ x = $this->x, y = $this->y, z = $this->z }";
}
}
}

46
src/Entity/Thumbnail.php Normal file
View File

@@ -0,0 +1,46 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Entity;
class Thumbnail extends AbstractEntity {
/**
* @var string
*/
private $file;
/**
* @return string
*/
public function getFile() {
return $this->file;
}
}

41
src/Entity/Toon.php Normal file
View File

@@ -0,0 +1,41 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Entity;
class Toon extends AbstractEntity {
private $region;
private $programId;
private $realm;
private $id;
}

View File

@@ -0,0 +1,56 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event;
use Rogiel\StarReplay\Metadata\Event\Header;
abstract class AbstractEvent implements Event {
/**
* @var Header
*/
private $header;
// -----------------------------------------------------------------------------------------------------------------
/**
* @return Header
*/
public function getHeader() {
return $this->header;
}
/**
* @param Header $header
*/
public function setHeader($header) {
$this->header = $header;
}
}

41
src/Event/Event.php Normal file
View File

@@ -0,0 +1,41 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event;
use Rogiel\StarReplay\Metadata\Event\Header;
interface Event {
/**
* @return Header
*/
public function getHeader();
}

View File

@@ -0,0 +1,101 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class AICommunicateEvent extends AbstractGameEvent {
/** @var integer */
public $beacon;
/** @var integer */
public $ally;
/** @var integer */
public $flags;
/** @var integer */
public $build;
/** @var integer */
public $targetUnitTag;
/** @var integer */
public $targetUnitSnapshotUnitLink;
/** @var integer */
public $targetUnitSnapshotUpkeepPlayerId;
/** @var integer */
public $targetUnitSnapshotControlPlayerId;
/** @var \Rogiel\StarReplay\Entity\Point */
public $targetPoint;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SAICommunicateEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ beacon = $this->beacon, ally = $this->ally, flags = $this->flags, build = $this->build, targetUnitTag = $this->targetUnitTag, targetUnitSnapshotUnitLink = $this->targetUnitSnapshotUnitLink, targetUnitSnapshotUpkeepPlayerId = $this->targetUnitSnapshotUpkeepPlayerId, targetUnitSnapshotControlPlayerId = $this->targetUnitSnapshotControlPlayerId, targetPoint = $this->targetPoint }";
}
/** @return integer */
public function getBeacon() { return $this->beacon; }
/** @return integer */
public function getAlly() { return $this->ally; }
/** @return integer */
public function getFlags() { return $this->flags; }
/** @return integer */
public function getBuild() { return $this->build; }
/** @return integer */
public function getTargetUnitTag() { return $this->targetUnitTag; }
/** @return integer */
public function getTargetUnitSnapshotUnitLink() { return $this->targetUnitSnapshotUnitLink; }
/** @return integer */
public function getTargetUnitSnapshotUpkeepPlayerId() { return $this->targetUnitSnapshotUpkeepPlayerId; }
/** @return integer */
public function getTargetUnitSnapshotControlPlayerId() { return $this->targetUnitSnapshotControlPlayerId; }
/** @return \Rogiel\StarReplay\Entity\Point */
public function getTargetPoint() { return $this->targetPoint; }
}

View File

@@ -0,0 +1,35 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
use Rogiel\StarReplay\Event\AbstractEvent;
class AbstractGameEvent extends AbstractEvent implements GameEvent {
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class AchievementAwardedEvent extends AbstractGameEvent {
/** @var integer */
public $achievementLink;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SAchievementAwardedEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ achievementLink = $this->achievementLink }";
}
/** @return integer */
public function getAchievementLink() { return $this->achievementLink; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class AddAbsoluteGameSpeedEvent extends AbstractGameEvent {
/** @var integer */
public $delta;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SAddAbsoluteGameSpeedEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ delta = $this->delta }";
}
/** @return integer */
public function getDelta() { return $this->delta; }
}

View File

@@ -0,0 +1,59 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class AllianceEvent extends AbstractGameEvent {
/** @var integer */
public $alliance;
/** @var integer */
public $control;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SAllianceEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ alliance = $this->alliance, control = $this->control }";
}
/** @return integer */
public function getAlliance() { return $this->alliance; }
/** @return integer */
public function getControl() { return $this->control; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class BankFileEvent extends AbstractGameEvent {
/** @var string */
public $name;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SBankFileEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ name = $this->name }";
}
/** @return string */
public function getName() { return $this->name; }
}

View File

@@ -0,0 +1,65 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class BankKeyEvent extends AbstractGameEvent {
/** @var string */
public $name;
/** @var integer */
public $type;
/** @var string */
public $data;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SBankKeyEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ name = $this->name, type = $this->type, data = $this->data }";
}
/** @return string */
public function getName() { return $this->name; }
/** @return integer */
public function getType() { return $this->type; }
/** @return string */
public function getData() { return $this->data; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class BankSectionEvent extends AbstractGameEvent {
/** @var string */
public $name;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SBankSectionEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ name = $this->name }";
}
/** @return string */
public function getName() { return $this->name; }
}

View File

@@ -0,0 +1,59 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class BankSignatureEvent extends AbstractGameEvent {
/** @var \Rogiel\StarReplay\Event\Game\Entity\BankSignature */
public $signature;
/** @var string */
public $toonHandle;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SBankSignatureEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ signature = $this->signature, toonHandle = $this->toonHandle }";
}
/** @return \Rogiel\StarReplay\Event\Game\Entity\BankSignature */
public function getSignature() { return $this->signature; }
/** @return string */
public function getToonHandle() { return $this->toonHandle; }
}

View File

@@ -0,0 +1,65 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class BankValueEvent extends AbstractGameEvent {
/** @var integer */
public $type;
/** @var string */
public $name;
/** @var string */
public $data;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SBankValueEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ type = $this->type, name = $this->name, data = $this->data }";
}
/** @return integer */
public function getType() { return $this->type; }
/** @return string */
public function getName() { return $this->name; }
/** @return string */
public function getData() { return $this->data; }
}

View File

@@ -0,0 +1,59 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class BroadcastCheatEvent extends AbstractGameEvent {
/** @var string */
public $verb;
/** @var string */
public $arguments;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SBroadcastCheatEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ verb = $this->verb, arguments = $this->arguments }";
}
/** @return string */
public function getVerb() { return $this->verb; }
/** @return string */
public function getArguments() { return $this->arguments; }
}

View File

@@ -0,0 +1,59 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class CameraSaveEvent extends AbstractGameEvent {
/** @var integer */
public $which;
/** @var \Rogiel\StarReplay\Entity\Point */
public $target;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SCameraSaveEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ which = $this->which, target = $this->target }";
}
/** @return integer */
public function getWhich() { return $this->which; }
/** @return \Rogiel\StarReplay\Entity\Point */
public function getTarget() { return $this->target; }
}

View File

@@ -0,0 +1,83 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class CameraUpdateEvent extends AbstractGameEvent {
/** @var null|\Rogiel\StarReplay\Entity\Point */
public $target;
/** @var null|integer */
public $distance;
/** @var null|integer */
public $pitch;
/** @var null|integer */
public $yaw;
/** @var null|integer */
public $reason;
/** @var boolean */
public $follow;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SCameraUpdateEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ target = $this->target, distance = $this->distance, pitch = $this->pitch, yaw = $this->yaw, reason = $this->reason, follow = $this->follow }";
}
/** @return null|\Rogiel\StarReplay\Entity\Point */
public function getTarget() { return $this->target; }
/** @return null|integer */
public function getDistance() { return $this->distance; }
/** @return null|integer */
public function getPitch() { return $this->pitch; }
/** @return null|integer */
public function getYaw() { return $this->yaw; }
/** @return null|integer */
public function getReason() { return $this->reason; }
/** @return boolean */
public function getFollow() { return $this->follow; }
}

View File

@@ -0,0 +1,71 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class CatalogModifyEvent extends AbstractGameEvent {
/** @var integer */
public $catalog;
/** @var integer */
public $entry;
/** @var string */
public $field;
/** @var string */
public $value;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SCatalogModifyEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ catalog = $this->catalog, entry = $this->entry, field = $this->field, value = $this->value }";
}
/** @return integer */
public function getCatalog() { return $this->catalog; }
/** @return integer */
public function getEntry() { return $this->entry; }
/** @return string */
public function getField() { return $this->field; }
/** @return string */
public function getValue() { return $this->value; }
}

View File

@@ -0,0 +1,83 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class CmdEvent extends AbstractGameEvent {
/** @var integer */
public $cmdFlags;
/** @var null|\Rogiel\StarReplay\Event\Game\Entity\Ability */
public $abil;
/** @var null|\Rogiel\StarReplay\Entity\Point|\Rogiel\StarReplay\Event\Game\Entity\TargetUnit|integer */
public $data;
/** @var integer */
public $sequence;
/** @var null|integer */
public $otherUnit;
/** @var null|integer */
public $unitGroup;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SCmdEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ cmdFlags = $this->cmdFlags, abil = $this->abil, data = $this->data, sequence = $this->sequence, otherUnit = $this->otherUnit, unitGroup = $this->unitGroup }";
}
/** @return integer */
public function getCmdFlags() { return $this->cmdFlags; }
/** @return null|\Rogiel\StarReplay\Event\Game\Entity\Ability */
public function getAbil() { return $this->abil; }
/** @return null|\Rogiel\StarReplay\Entity\Point|\Rogiel\StarReplay\Event\Game\Entity\TargetUnit|integer */
public function getData() { return $this->data; }
/** @return integer */
public function getSequence() { return $this->sequence; }
/** @return null|integer */
public function getOtherUnit() { return $this->otherUnit; }
/** @return null|integer */
public function getUnitGroup() { return $this->unitGroup; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class CmdUpdateTargetPointEvent extends AbstractGameEvent {
/** @var \Rogiel\StarReplay\Entity\Point */
public $target;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SCmdUpdateTargetPointEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ target = $this->target }";
}
/** @return \Rogiel\StarReplay\Entity\Point */
public function getTarget() { return $this->target; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class CmdUpdateTargetUnitEvent extends AbstractGameEvent {
/** @var \Rogiel\StarReplay\Event\Game\Entity\TargetUnit */
public $target;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SCmdUpdateTargetUnitEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ target = $this->target }";
}
/** @return \Rogiel\StarReplay\Event\Game\Entity\TargetUnit */
public function getTarget() { return $this->target; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class CommandManagerResetEvent extends AbstractGameEvent {
/** @var integer */
public $sequence;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SCommandManagerResetEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ sequence = $this->sequence }";
}
/** @return integer */
public function getSequence() { return $this->sequence; }
}

View File

@@ -0,0 +1,59 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class CommandManagerStateEvent extends AbstractGameEvent {
/** @var integer */
public $state;
/** @var null|integer */
public $sequence;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SCommandManagerStateEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ state = $this->state, sequence = $this->sequence }";
}
/** @return integer */
public function getState() { return $this->state; }
/** @return null|integer */
public function getSequence() { return $this->sequence; }
}

View File

@@ -0,0 +1,65 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class ControlGroupUpdateEvent extends AbstractGameEvent {
/** @var integer */
public $controlGroupIndex;
/** @var integer */
public $controlGroupUpdate;
/** @var null|\Rogiel\StarReplay\Event\Game\Entity\ControlGroupUpdateMask|\Rogiel\StarReplay\Event\Game\Entity\ControlGroupUpdateZeroIndices|\Rogiel\StarReplay\Event\Game\Entity\ControlGroupUpdateZeroIndices */
public $mask;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SControlGroupUpdateEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ controlGroupIndex = $this->controlGroupIndex, controlGroupUpdate = $this->controlGroupUpdate, mask = $this->mask }";
}
/** @return integer */
public function getControlGroupIndex() { return $this->controlGroupIndex; }
/** @return integer */
public function getControlGroupUpdate() { return $this->controlGroupUpdate; }
/** @return null|\Rogiel\StarReplay\Event\Game\Entity\ControlGroupUpdateMask|\Rogiel\StarReplay\Event\Game\Entity\ControlGroupUpdateZeroIndices|\Rogiel\StarReplay\Event\Game\Entity\ControlGroupUpdateZeroIndices */
public function getMask() { return $this->mask; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class DecrementGameTimeRemainingEvent extends AbstractGameEvent {
/** @var integer */
public $decrementMs;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SDecrementGameTimeRemainingEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ decrementMs = $this->decrementMs }";
}
/** @return integer */
public function getDecrementMs() { return $this->decrementMs; }
}

View File

@@ -0,0 +1,63 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game\Entity;
class Ability {
private $abilLink;
private $abilCmdIndex;
private $abilCmdData;
/**
* @return mixed
*/
public function getAbilLink() {
return $this->abilLink;
}
/**
* @return mixed
*/
public function getAbilCmdIndex() {
return $this->abilCmdIndex;
}
/**
* @return mixed
*/
public function getAbilCmdData() {
return $this->abilCmdData;
}
public function __toString() {
return "Ability { abilLink = $this->abilLink, getAbilCmdIndex = $this->abilCmdIndex, getAbilCmdData = $this->abilCmdData }";
}
}

View File

@@ -0,0 +1,54 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game\Entity;
class BankSignature {
private $signature;
/**
* BankSignature constructor.
* @param $signature
*/
public function __construct($signature) {
$this->signature = $signature;
}
/**
* @return mixed
*/
public function getSignature() {
return $this->signature;
}
public function __toString() {
return join('', array_map('dechex', $this->signature));
}
}

View File

@@ -0,0 +1,49 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game\Entity;
class ControlGroupUpdateMask {
private $mask;
/**
* ControlGroupUpdateMask constructor.
* @param $mask
*/
public function __construct($mask) {
$this->mask = $mask;
}
public function __toString() {
return "[ ". decbin($this->mask) ." ]";
}
}

View File

@@ -0,0 +1,48 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game\Entity;
class ControlGroupUpdateOneIndices {
private $mask = array();
/**
* ControlGroupUpdateMask constructor.
* @param $mask
*/
public function __construct($mask) {
$this->mask = $mask;
}
public function __toString() {
return "[ ". join(', ', $this->mask) ." ]";
}
}

View File

@@ -0,0 +1,48 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game\Entity;
class ControlGroupUpdateZeroIndices {
private $mask = array();
/**
* ControlGroupUpdateMask constructor.
* @param $mask
*/
public function __construct($mask) {
$this->mask = $mask;
}
public function __toString() {
return "[ ". join(', ', $this->mask) ." ]";
}
}

View File

@@ -0,0 +1,76 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game\Entity;
class ResourceRequest {
const MINERALS = 0;
const VESPENE = 1;
const TERRAZINE = 2;
const CUSTOM = 3;
private $resources;
/**
* ResourceRequest constructor.
* @param $resources
*/
public function __construct($resources) {
$this->resources = $resources;
}
/**
* @return mixed
*/
public function getResources() {
return $this->resources;
}
public function getMinerals() {
return $this->resources[self::MINERALS];
}
public function getVespene() {
return $this->resources[self::VESPENE];
}
public function getTerrazine() {
return $this->resources[self::TERRAZINE];
}
public function getCustom() {
return $this->resources[self::CUSTOM];
}
public function __toString() {
return "ResourceRequest{ minerals = ".$this->getMinerals().", vespene = ".$this->getVespene().", terrazine = ".$this->getTerrazine().", custom = ".$this->getCustom()." }";
}
}

View File

@@ -0,0 +1,75 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game\Entity;
class SelectionDelta {
private $subgroupIndex;
private $removeMask;
private $addSubgroups;
private $addUnitTags;
// -----------------------------------------------------------------------------------------------------------------
/**
* @return mixed
*/
public function getSubgroupIndex() {
return $this->subgroupIndex;
}
/**
* @return mixed
*/
public function getRemoveMask() {
return $this->removeMask;
}
/**
* @return mixed
*/
public function getAddSubgroups() {
return $this->addSubgroups;
}
/**
* @return mixed
*/
public function getAddUnitTags() {
return $this->addUnitTags;
}
// -----------------------------------------------------------------------------------------------------------------
public function __toString() {
return "SelectionDelta{ subgroupIndex = $this->subgroupIndex, removeMask = $this->removeMask, addSubgroups = " . join(', ', $this->addSubgroups) . ", addUnitTags = ".join(', ', $this->addUnitTags)." }";
}
}

View File

@@ -0,0 +1,60 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game\Entity;
class SoundLengthSync {
private $soundHash;
private $length;
// -----------------------------------------------------------------------------------------------------------------
/**
* @return mixed
*/
public function getSoundHash() {
return $this->soundHash;
}
/**
* @return mixed
*/
public function getLength() {
return $this->length;
}
// -----------------------------------------------------------------------------------------------------------------
public function __toString() {
return 'SoundLengthSync { soundHash = [ '.join(', ', $this->soundHash) .
' ], length = '.join(', ', $this->length).' }';
}
}

View File

@@ -0,0 +1,71 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game\Entity;
class SubgroupUnit {
private $unitLink;
private $subgroupPriority;
private $intraSubgroupPriority;
private $count;
/**
* @return mixed
*/
public function getUnitLink() {
return $this->unitLink;
}
/**
* @return mixed
*/
public function getSubgroupPriority() {
return $this->subgroupPriority;
}
/**
* @return mixed
*/
public function getIntraSubgroupPriority() {
return $this->intraSubgroupPriority;
}
/**
* @return mixed
*/
public function getCount() {
return $this->count;
}
public function __toString() {
return "SubgroupUnit{ unitLink = $this->unitLink, subgroupPriority = $this->subgroupPriority, intraSubgroupPriority = $this->intraSubgroupPriority, count = $this->count }";
}
}

View File

@@ -0,0 +1,96 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game\Entity;
class TargetUnit {
private $targetUnitFlags;
private $timer;
private $tag;
private $snapshotUnitLink;
private $snapshotControlPlayerId;
private $snapshotUpkeepPlayerId;
private $snapshotPoint;
/**
* @return mixed
*/
public function getTargetUnitFlags() {
return $this->targetUnitFlags;
}
/**
* @return mixed
*/
public function getTimer() {
return $this->timer;
}
/**
* @return mixed
*/
public function getTag() {
return $this->tag;
}
/**
* @return mixed
*/
public function getSnapshotUnitLink() {
return $this->snapshotUnitLink;
}
/**
* @return mixed
*/
public function getSnapshotControlPlayerId() {
return $this->snapshotControlPlayerId;
}
/**
* @return mixed
*/
public function getSnapshotUpkeepPlayerId() {
return $this->snapshotUpkeepPlayerId;
}
/**
* @return mixed
*/
public function getSnapshotPoint() {
return $this->snapshotPoint;
}
public function __toString() {
return "TargetUnit{ targetUnitFlags = $this->targetUnitFlags, timer = $this->timer, tag = $this->tag, snapshotUnitLink = $this->snapshotUnitLink, snapshotControlPlayerId = $this->snapshotControlPlayerId, snapshotUpkeepPlayerId = $this->snapshotUpkeepPlayerId, snapshotPoint = $this->snapshotPoint }";
}
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class GameCheatEvent extends AbstractGameEvent {
/** @var struct */
public $data;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SGameCheatEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ data = $this->data }";
}
/** @return struct */
public function getData() { return $this->data; }
}

View File

@@ -0,0 +1,35 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
use Rogiel\StarReplay\Event\Event;
interface GameEvent extends Event {
}

View File

@@ -0,0 +1,89 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class GameUserJoinEvent extends AbstractGameEvent {
/** @var integer */
public $observe;
/** @var string */
public $name;
/** @var null|string */
public $toonHandle;
/** @var null|string */
public $clanTag;
/** @var null|string */
public $clanLogo;
/** @var boolean */
public $hijack;
/** @var null|integer */
public $hijackCloneGameUserId;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SGameUserJoinEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ observe = $this->observe, name = $this->name, toonHandle = $this->toonHandle, clanTag = $this->clanTag, clanLogo = $this->clanLogo, hijack = $this->hijack, hijackCloneGameUserId = $this->hijackCloneGameUserId }";
}
/** @return integer */
public function getObserve() { return $this->observe; }
/** @return string */
public function getName() { return $this->name; }
/** @return null|string */
public function getToonHandle() { return $this->toonHandle; }
/** @return null|string */
public function getClanTag() { return $this->clanTag; }
/** @return null|string */
public function getClanLogo() { return $this->clanLogo; }
/** @return boolean */
public function getHijack() { return $this->hijack; }
/** @return null|integer */
public function getHijackCloneGameUserId() { return $this->hijackCloneGameUserId; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class GameUserLeaveEvent extends AbstractGameEvent {
/** @var integer */
public $leaveReason;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SGameUserLeaveEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ leaveReason = $this->leaveReason }";
}
/** @return integer */
public function getLeaveReason() { return $this->leaveReason; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class HeroTalentTreeSelectedEvent extends AbstractGameEvent {
/** @var integer */
public $index;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SHeroTalentTreeSelectedEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ index = $this->index }";
}
/** @return integer */
public function getIndex() { return $this->index; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class HeroTalentTreeSelectionPanelToggledEvent extends AbstractGameEvent {
/** @var boolean */
public $shown;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SHeroTalentTreeSelectionPanelToggledEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ shown = $this->shown }";
}
/** @return boolean */
public function getShown() { return $this->shown; }
}

View File

@@ -0,0 +1,59 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class HijackReplayGameEvent extends AbstractGameEvent {
/** @var array */
public $userInfos;
/** @var integer */
public $method;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SHijackReplayGameEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ userInfos = $this->userInfos, method = $this->method }";
}
/** @return array */
public function getUserInfos() { return $this->userInfos; }
/** @return integer */
public function getMethod() { return $this->method; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class LagMessageEvent extends AbstractGameEvent {
/** @var integer */
public $laggingPlayerId;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SLagMessageEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ laggingPlayerId = $this->laggingPlayerId }";
}
/** @return integer */
public function getLaggingPlayerId() { return $this->laggingPlayerId; }
}

View File

@@ -0,0 +1,51 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class LoadGameDoneEvent extends AbstractGameEvent {
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SLoadGameDoneEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ }";
}
}

View File

@@ -0,0 +1,51 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class PlayerLeaveEvent extends AbstractGameEvent {
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SPlayerLeaveEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ }";
}
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class ResourceRequestCancelEvent extends AbstractGameEvent {
/** @var integer */
public $cancelRequestId;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SResourceRequestCancelEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ cancelRequestId = $this->cancelRequestId }";
}
/** @return integer */
public function getCancelRequestId() { return $this->cancelRequestId; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class ResourceRequestEvent extends AbstractGameEvent {
/** @var \Rogiel\StarReplay\Event\Game\Entity\ResourceRequest */
public $resources;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SResourceRequestEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ resources = $this->resources }";
}
/** @return \Rogiel\StarReplay\Event\Game\Entity\ResourceRequest */
public function getResources() { return $this->resources; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class ResourceRequestFulfillEvent extends AbstractGameEvent {
/** @var integer */
public $fulfillRequestId;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SResourceRequestFulfillEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ fulfillRequestId = $this->fulfillRequestId }";
}
/** @return integer */
public function getFulfillRequestId() { return $this->fulfillRequestId; }
}

View File

@@ -0,0 +1,59 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class ResourceTradeEvent extends AbstractGameEvent {
/** @var integer */
public $recipientId;
/** @var \Rogiel\StarReplay\Event\Game\Entity\ResourceRequest */
public $resources;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SResourceTradeEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ recipientId = $this->recipientId, resources = $this->resources }";
}
/** @return integer */
public function getRecipientId() { return $this->recipientId; }
/** @return \Rogiel\StarReplay\Event\Game\Entity\ResourceRequest */
public function getResources() { return $this->resources; }
}

View File

@@ -0,0 +1,51 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class SaveGameDoneEvent extends AbstractGameEvent {
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SSaveGameDoneEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ }";
}
}

View File

@@ -0,0 +1,77 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class SaveGameEvent extends AbstractGameEvent {
/** @var string */
public $fileName;
/** @var boolean */
public $automatic;
/** @var boolean */
public $overwrite;
/** @var string */
public $name;
/** @var string */
public $description;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SSaveGameEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ fileName = $this->fileName, automatic = $this->automatic, overwrite = $this->overwrite, name = $this->name, description = $this->description }";
}
/** @return string */
public function getFileName() { return $this->fileName; }
/** @return boolean */
public function getAutomatic() { return $this->automatic; }
/** @return boolean */
public function getOverwrite() { return $this->overwrite; }
/** @return string */
public function getName() { return $this->name; }
/** @return string */
public function getDescription() { return $this->description; }
}

View File

@@ -0,0 +1,59 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class SelectionDeltaEvent extends AbstractGameEvent {
/** @var integer */
public $controlGroupId;
/** @var \Rogiel\StarReplay\Event\Game\Entity\SelectionDelta */
public $delta;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SSelectionDeltaEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ controlGroupId = $this->controlGroupId, delta = $this->delta }";
}
/** @return integer */
public function getControlGroupId() { return $this->controlGroupId; }
/** @return \Rogiel\StarReplay\Event\Game\Entity\SelectionDelta */
public function getDelta() { return $this->delta; }
}

View File

@@ -0,0 +1,59 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class SelectionSyncCheckEvent extends AbstractGameEvent {
/** @var integer */
public $controlGroupId;
/** @var struct */
public $selectionSyncData;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SSelectionSyncCheckEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ controlGroupId = $this->controlGroupId, selectionSyncData = $this->selectionSyncData }";
}
/** @return integer */
public function getControlGroupId() { return $this->controlGroupId; }
/** @return struct */
public function getSelectionSyncData() { return $this->selectionSyncData; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class SetAbsoluteGameSpeedEvent extends AbstractGameEvent {
/** @var integer */
public $speed;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.SSetAbsoluteGameSpeedEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ speed = $this->speed }";
}
/** @return integer */
public function getSpeed() { return $this->speed; }
}

View File

@@ -0,0 +1,51 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerAbortMissionEvent extends AbstractGameEvent {
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerAbortMissionEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ }";
}
}

View File

@@ -0,0 +1,65 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerAnimLengthQueryByNameEvent extends AbstractGameEvent {
/** @var integer */
public $queryId;
/** @var integer */
public $lengthMs;
/** @var integer */
public $finishGameLoop;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerAnimLengthQueryByNameEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ queryId = $this->queryId, lengthMs = $this->lengthMs, finishGameLoop = $this->finishGameLoop }";
}
/** @return integer */
public function getQueryId() { return $this->queryId; }
/** @return integer */
public function getLengthMs() { return $this->lengthMs; }
/** @return integer */
public function getFinishGameLoop() { return $this->finishGameLoop; }
}

View File

@@ -0,0 +1,59 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerAnimLengthQueryByPropsEvent extends AbstractGameEvent {
/** @var integer */
public $queryId;
/** @var integer */
public $lengthMs;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerAnimLengthQueryByPropsEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ queryId = $this->queryId, lengthMs = $this->lengthMs }";
}
/** @return integer */
public function getQueryId() { return $this->queryId; }
/** @return integer */
public function getLengthMs() { return $this->lengthMs; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerAnimOffsetEvent extends AbstractGameEvent {
/** @var integer */
public $animWaitQueryId;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerAnimOffsetEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ animWaitQueryId = $this->animWaitQueryId }";
}
/** @return integer */
public function getAnimWaitQueryId() { return $this->animWaitQueryId; }
}

View File

@@ -0,0 +1,51 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerBattleReportPanelExitEvent extends AbstractGameEvent {
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerBattleReportPanelExitEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ }";
}
}

View File

@@ -0,0 +1,59 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerBattleReportPanelPlayMissionEvent extends AbstractGameEvent {
/** @var integer */
public $battleReportId;
/** @var integer */
public $difficultyLevel;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerBattleReportPanelPlayMissionEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ battleReportId = $this->battleReportId, difficultyLevel = $this->difficultyLevel }";
}
/** @return integer */
public function getBattleReportId() { return $this->battleReportId; }
/** @return integer */
public function getDifficultyLevel() { return $this->difficultyLevel; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerBattleReportPanelPlaySceneEvent extends AbstractGameEvent {
/** @var integer */
public $battleReportId;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerBattleReportPanelPlaySceneEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ battleReportId = $this->battleReportId }";
}
/** @return integer */
public function getBattleReportId() { return $this->battleReportId; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerBattleReportPanelSelectionChangedEvent extends AbstractGameEvent {
/** @var integer */
public $battleReportId;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerBattleReportPanelSelectionChangedEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ battleReportId = $this->battleReportId }";
}
/** @return integer */
public function getBattleReportId() { return $this->battleReportId; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerButtonPressedEvent extends AbstractGameEvent {
/** @var integer */
public $button;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerButtonPressedEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ button = $this->button }";
}
/** @return integer */
public function getButton() { return $this->button; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerCameraMoveEvent extends AbstractGameEvent {
/** @var array */
public $reason;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerCameraMoveEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ reason = $this->reason }";
}
/** @return array */
public function getReason() { return $this->reason; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerChatMessageEvent extends AbstractGameEvent {
/** @var string */
public $chatMessage;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerChatMessageEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ chatMessage = $this->chatMessage }";
}
/** @return string */
public function getChatMessage() { return $this->chatMessage; }
}

View File

@@ -0,0 +1,59 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerCommandErrorEvent extends AbstractGameEvent {
/** @var integer */
public $error;
/** @var null|\Rogiel\StarReplay\Event\Game\Entity\Ability */
public $abil;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerCommandErrorEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ error = $this->error, abil = $this->abil }";
}
/** @return integer */
public function getError() { return $this->error; }
/** @return null|\Rogiel\StarReplay\Event\Game\Entity\Ability */
public function getAbil() { return $this->abil; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerConversationSkippedEvent extends AbstractGameEvent {
/** @var integer */
public $skipType;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerConversationSkippedEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ skipType = $this->skipType }";
}
/** @return integer */
public function getSkipType() { return $this->skipType; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerCustomDialogDismissedEvent extends AbstractGameEvent {
/** @var integer */
public $result;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerCustomDialogDismissedEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ result = $this->result }";
}
/** @return integer */
public function getResult() { return $this->result; }
}

View File

@@ -0,0 +1,59 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerCutsceneBookmarkFiredEvent extends AbstractGameEvent {
/** @var integer */
public $cutsceneId;
/** @var string */
public $bookmarkName;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerCutsceneBookmarkFiredEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ cutsceneId = $this->cutsceneId, bookmarkName = $this->bookmarkName }";
}
/** @return integer */
public function getCutsceneId() { return $this->cutsceneId; }
/** @return string */
public function getBookmarkName() { return $this->bookmarkName; }
}

View File

@@ -0,0 +1,65 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerCutsceneConversationLineEvent extends AbstractGameEvent {
/** @var integer */
public $cutsceneId;
/** @var string */
public $conversationLine;
/** @var string */
public $altConversationLine;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerCutsceneConversationLineEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ cutsceneId = $this->cutsceneId, conversationLine = $this->conversationLine, altConversationLine = $this->altConversationLine }";
}
/** @return integer */
public function getCutsceneId() { return $this->cutsceneId; }
/** @return string */
public function getConversationLine() { return $this->conversationLine; }
/** @return string */
public function getAltConversationLine() { return $this->altConversationLine; }
}

View File

@@ -0,0 +1,59 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerCutsceneConversationLineMissingEvent extends AbstractGameEvent {
/** @var integer */
public $cutsceneId;
/** @var string */
public $conversationLine;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerCutsceneConversationLineMissingEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ cutsceneId = $this->cutsceneId, conversationLine = $this->conversationLine }";
}
/** @return integer */
public function getCutsceneId() { return $this->cutsceneId; }
/** @return string */
public function getConversationLine() { return $this->conversationLine; }
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerCutsceneEndSceneFiredEvent extends AbstractGameEvent {
/** @var integer */
public $cutsceneId;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerCutsceneEndSceneFiredEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ cutsceneId = $this->cutsceneId }";
}
/** @return integer */
public function getCutsceneId() { return $this->cutsceneId; }
}

View File

@@ -0,0 +1,65 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerDialogControlEvent extends AbstractGameEvent {
/** @var integer */
public $controlId;
/** @var integer */
public $eventType;
/** @var null|boolean|integer|integer|string|integer */
public $eventData;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerDialogControlEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ controlId = $this->controlId, eventType = $this->eventType, eventData = $this->eventData }";
}
/** @return integer */
public function getControlId() { return $this->controlId; }
/** @return integer */
public function getEventType() { return $this->eventType; }
/** @return null|boolean|integer|integer|string|integer */
public function getEventData() { return $this->eventData; }
}

View File

@@ -0,0 +1,51 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerGameCreditsFinishedEvent extends AbstractGameEvent {
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerGameCreditsFinishedEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ }";
}
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerGameMenuItemSelectedEvent extends AbstractGameEvent {
/** @var integer */
public $gameMenuItemIndex;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerGameMenuItemSelectedEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ gameMenuItemIndex = $this->gameMenuItemIndex }";
}
/** @return integer */
public function getGameMenuItemIndex() { return $this->gameMenuItemIndex; }
}

View File

@@ -0,0 +1,59 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerHotkeyPressedEvent extends AbstractGameEvent {
/** @var integer */
public $hotkey;
/** @var boolean */
public $down;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerHotkeyPressedEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ hotkey = $this->hotkey, down = $this->down }";
}
/** @return integer */
public function getHotkey() { return $this->hotkey; }
/** @return boolean */
public function getDown() { return $this->down; }
}

View File

@@ -0,0 +1,59 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerKeyPressedEvent extends AbstractGameEvent {
/** @var integer */
public $key;
/** @var integer */
public $flags;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerKeyPressedEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ key = $this->key, flags = $this->flags }";
}
/** @return integer */
public function getKey() { return $this->key; }
/** @return integer */
public function getFlags() { return $this->flags; }
}

View File

@@ -0,0 +1,51 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerMercenaryPanelExitEvent extends AbstractGameEvent {
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerMercenaryPanelExitEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ }";
}
}

View File

@@ -0,0 +1,51 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerMercenaryPanelPurchaseEvent extends AbstractGameEvent {
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerMercenaryPanelPurchaseEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ }";
}
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerMercenaryPanelSelectionChangedEvent extends AbstractGameEvent {
/** @var integer */
public $mercenaryId;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerMercenaryPanelSelectionChangedEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ mercenaryId = $this->mercenaryId }";
}
/** @return integer */
public function getMercenaryId() { return $this->mercenaryId; }
}

View File

@@ -0,0 +1,77 @@
<?php
/**
* Copyright (c) 2016, Rogiel Sulzbach
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
namespace Rogiel\StarReplay\Event\Game;
class TriggerMouseClickedEvent extends AbstractGameEvent {
/** @var integer */
public $button;
/** @var boolean */
public $down;
/** @var \Rogiel\StarReplay\Entity\Point */
public $posUI;
/** @var \Rogiel\StarReplay\Entity\Point */
public $posWorld;
/** @var integer */
public $flags;
/**
* @return string the event name
*/
public function getEventName() {
return "NNet.Game.STriggerMouseClickedEvent";
}
/**
* @return string a string representation of the event
*/
public function __toString() {
return $this->getEventName()."{ button = $this->button, down = $this->down, posUI = $this->posUI, posWorld = $this->posWorld, flags = $this->flags }";
}
/** @return integer */
public function getButton() { return $this->button; }
/** @return boolean */
public function getDown() { return $this->down; }
/** @return \Rogiel\StarReplay\Entity\Point */
public function getPosUI() { return $this->posUI; }
/** @return \Rogiel\StarReplay\Entity\Point */
public function getPosWorld() { return $this->posWorld; }
/** @return integer */
public function getFlags() { return $this->flags; }
}

Some files were not shown because too many files have changed in this diff Show More