diff --git a/scripts/sync_s2clientprotocol_protobuf_stubs.sh b/scripts/sync_s2clientprotocol_protobuf_stubs.sh new file mode 100644 index 000000000..bc0658607 --- /dev/null +++ b/scripts/sync_s2clientprotocol_protobuf_stubs.sh @@ -0,0 +1,62 @@ +#!/bin/bash +# Based on scripts/generate_proto_stubs.sh. +# Generates the protobuf stubs for the given s2clientprotocol version using mypy-protobuf. +# Generally, new minor versions are a good time to update the stubs. + +set -euxo pipefail + +# Whenever you update S2CLIENT_PROTO_VERSION here, version should be updated +# in stubs/s2clientprotocol/METADATA.toml and vice-versa. +S2CLIENT_PROTO_VERSION=c04df4adbe274858a4eb8417175ee32ad02fd609 +MYPY_PROTOBUF_VERSION=3.6.0 + +REPO_ROOT="$(realpath "$(dirname "${BASH_SOURCE[0]}")"/..)" +TMP_DIR="$(mktemp -d)" +S2CLIENT_PROTO_FILENAME="$S2CLIENT_PROTO_VERSION.zip" +S2CLIENT_PROTO_URL="https://github.com/Blizzard/s2client-proto/archive/$S2CLIENT_PROTO_FILENAME" +S2CLIENT_PROTO_DIR="s2client-proto-$S2CLIENT_PROTO_VERSION" + +cd "$TMP_DIR" +echo "Working in $TMP_DIR" + +# Fetch s2clientprotocol (which contains all the .proto files) +wget "$S2CLIENT_PROTO_URL" +unzip "$S2CLIENT_PROTO_FILENAME" + +# Prepare virtualenv +python3 -m venv .venv +source .venv/bin/activate +python3 -m pip install pre-commit mypy-protobuf=="$MYPY_PROTOBUF_VERSION" + +# Remove existing pyi +find "$REPO_ROOT/stubs/s2clientprotocol/" -name "*_pb2.pyi" -delete + +# s2client works on very old protoc versions, down to 2.6. So we can use the system's protoc. +PROTOC_VERSION=$(protoc --version) +echo $PROTOC_VERSION +protoc \ + --proto_path="$S2CLIENT_PROTO_DIR" \ + --mypy_out "relax_strict_optional_primitives:$REPO_ROOT/stubs/s2clientprotocol" \ + $S2CLIENT_PROTO_DIR/s2clientprotocol/*.proto \ + +PYTHON_S2CLIENT_PROTO_VERSION=$( + grep -Pzo 'def game_version\(\):\n return ".+?"' $S2CLIENT_PROTO_DIR/s2clientprotocol/build.py \ + | tr '\n' ' ' \ + | cut -d '"' -f 2 +) + +# Cleanup after ourselves, this is a temp dir, but it can still grow fast if run multiple times +rm -rf "$TMP_DIR" +# Must be in a git repository to run pre-commit +cd "$REPO_ROOT" + +sed --in-place="" \ + "s/extra_description = .*$/extra_description = \"\ +Partially generated using [mypy-protobuf==$MYPY_PROTOBUF_VERSION](https:\/\/github.com\/nipunn1313\/mypy-protobuf\/tree\/v$MYPY_PROTOBUF_VERSION) \ +and $PROTOC_VERSION \ +on [s2client-proto $PYTHON_S2CLIENT_PROTO_VERSION](https:\/\/github.com\/Blizzard\/s2client-proto\/tree\/$S2CLIENT_PROTO_VERSION)\"/" \ + stubs/s2clientprotocol/METADATA.toml + +# use `|| true` so the script still continues even if a pre-commit hook +# applies autofixes (which will result in a nonzero exit code) +pre-commit run --files $(git ls-files -- "stubs/s2clientprotocol/**_pb2.pyi") || true diff --git a/stubs/s2clientprotocol/@tests/stubtest_allowlist.txt b/stubs/s2clientprotocol/@tests/stubtest_allowlist.txt index 00765f966..b2e471a07 100644 --- a/stubs/s2clientprotocol/@tests/stubtest_allowlist.txt +++ b/stubs/s2clientprotocol/@tests/stubtest_allowlist.txt @@ -1,3 +1,4 @@ # All modules ending with *_pb2 fail to import -# The error message is "TypeError: Descriptors cannot be create directly" +# The error message is "TypeError: Descriptors cannot be created directly. +# If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0." s2clientprotocol\..+_pb2 diff --git a/stubs/s2clientprotocol/METADATA.toml b/stubs/s2clientprotocol/METADATA.toml index 7df358b65..c59e1b5b1 100644 --- a/stubs/s2clientprotocol/METADATA.toml +++ b/stubs/s2clientprotocol/METADATA.toml @@ -1,3 +1,6 @@ +# Whenever you update version here, S2CLIENT_PROTO_VERSION should be updated +# in scripts/sync_s2clientprotocol_protobuf_stubs.sh and vice-versa. version = "5.*" upstream_repository = "https://github.com/Blizzard/s2client-proto" requires = ["types-protobuf"] +extra_description = "Partially generated using [mypy-protobuf==3.6.0](https://github.com/nipunn1313/mypy-protobuf/tree/v3.6.0) and libprotoc 3.6.1 on [s2client-proto 5.0.12.91115.0](https://github.com/Blizzard/s2client-proto/tree/c04df4adbe274858a4eb8417175ee32ad02fd609)" diff --git a/stubs/s2clientprotocol/s2clientprotocol/common_pb2.pyi b/stubs/s2clientprotocol/s2clientprotocol/common_pb2.pyi index cd8d993c1..298ef9bf1 100644 --- a/stubs/s2clientprotocol/s2clientprotocol/common_pb2.pyi +++ b/stubs/s2clientprotocol/s2clientprotocol/common_pb2.pyi @@ -2,6 +2,7 @@ @generated by mypy-protobuf. Do not edit manually! isort:skip_file """ + import builtins import sys import typing @@ -38,7 +39,7 @@ Protoss: Race.ValueType # 3 Random: Race.ValueType # 4 global___Race = Race -@typing_extensions.final +@typing.final class AvailableAbility(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -52,12 +53,12 @@ class AvailableAbility(google.protobuf.message.Message): ability_id: builtins.int | None = ..., requires_point: builtins.bool | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "requires_point", b"requires_point"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "requires_point", b"requires_point"]) -> None: ... + def HasField(self, field_name: typing.Literal["ability_id", b"ability_id", "requires_point", b"requires_point"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["ability_id", b"ability_id", "requires_point", b"requires_point"]) -> None: ... global___AvailableAbility = AvailableAbility -@typing_extensions.final +@typing.final class ImageData(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -66,11 +67,12 @@ class ImageData(google.protobuf.message.Message): DATA_FIELD_NUMBER: builtins.int bits_per_pixel: builtins.int """Number of bits per pixel; 8 bits for a byte etc.""" + data: builtins.bytes + """Binary data; the size of this buffer in bytes is width * height * bits_per_pixel / 8.""" @property def size(self) -> global___Size2DI: """Dimension in pixels.""" - data: builtins.bytes - """Binary data; the size of this buffer in bytes is width * height * bits_per_pixel / 8.""" + def __init__( self, *, @@ -78,12 +80,12 @@ class ImageData(google.protobuf.message.Message): size: global___Size2DI | None = ..., data: builtins.bytes | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["bits_per_pixel", b"bits_per_pixel", "data", b"data", "size", b"size"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["bits_per_pixel", b"bits_per_pixel", "data", b"data", "size", b"size"]) -> None: ... + def HasField(self, field_name: typing.Literal["bits_per_pixel", b"bits_per_pixel", "data", b"data", "size", b"size"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["bits_per_pixel", b"bits_per_pixel", "data", b"data", "size", b"size"]) -> None: ... global___ImageData = ImageData -@typing_extensions.final +@typing.final class PointI(google.protobuf.message.Message): """Point on the screen/minimap (e.g., 0..64). Note: bottom left of the screen is 0, 0. @@ -101,12 +103,12 @@ class PointI(google.protobuf.message.Message): x: builtins.int | None = ..., y: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["x", b"x", "y", b"y"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["x", b"x", "y", b"y"]) -> None: ... + def HasField(self, field_name: typing.Literal["x", b"x", "y", b"y"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["x", b"x", "y", b"y"]) -> None: ... global___PointI = PointI -@typing_extensions.final +@typing.final class RectangleI(google.protobuf.message.Message): """Screen space rectangular area.""" @@ -124,12 +126,12 @@ class RectangleI(google.protobuf.message.Message): p0: global___PointI | None = ..., p1: global___PointI | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["p0", b"p0", "p1", b"p1"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["p0", b"p0", "p1", b"p1"]) -> None: ... + def HasField(self, field_name: typing.Literal["p0", b"p0", "p1", b"p1"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["p0", b"p0", "p1", b"p1"]) -> None: ... global___RectangleI = RectangleI -@typing_extensions.final +@typing.final class Point2D(google.protobuf.message.Message): """Point on the game board, 0..255. Note: bottom left of the screen is 0, 0. @@ -147,12 +149,12 @@ class Point2D(google.protobuf.message.Message): x: builtins.float | None = ..., y: builtins.float | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["x", b"x", "y", b"y"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["x", b"x", "y", b"y"]) -> None: ... + def HasField(self, field_name: typing.Literal["x", b"x", "y", b"y"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["x", b"x", "y", b"y"]) -> None: ... global___Point2D = Point2D -@typing_extensions.final +@typing.final class Point(google.protobuf.message.Message): """Point on the game board, 0..255. Note: bottom left of the screen is 0, 0. @@ -173,12 +175,12 @@ class Point(google.protobuf.message.Message): y: builtins.float | None = ..., z: builtins.float | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["x", b"x", "y", b"y", "z", b"z"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["x", b"x", "y", b"y", "z", b"z"]) -> None: ... + def HasField(self, field_name: typing.Literal["x", b"x", "y", b"y", "z", b"z"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["x", b"x", "y", b"y", "z", b"z"]) -> None: ... global___Point = Point -@typing_extensions.final +@typing.final class Size2DI(google.protobuf.message.Message): """Screen dimensions.""" @@ -194,7 +196,7 @@ class Size2DI(google.protobuf.message.Message): x: builtins.int | None = ..., y: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["x", b"x", "y", b"y"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["x", b"x", "y", b"y"]) -> None: ... + def HasField(self, field_name: typing.Literal["x", b"x", "y", b"y"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["x", b"x", "y", b"y"]) -> None: ... global___Size2DI = Size2DI diff --git a/stubs/s2clientprotocol/s2clientprotocol/data_pb2.pyi b/stubs/s2clientprotocol/s2clientprotocol/data_pb2.pyi index e9f840a88..6c33927e7 100644 --- a/stubs/s2clientprotocol/s2clientprotocol/data_pb2.pyi +++ b/stubs/s2clientprotocol/s2clientprotocol/data_pb2.pyi @@ -2,6 +2,7 @@ @generated by mypy-protobuf. Do not edit manually! isort:skip_file """ + import builtins import collections.abc import sys @@ -53,7 +54,7 @@ Heroic: Attribute.ValueType # 10 Summoned: Attribute.ValueType # 11 global___Attribute = Attribute -@typing_extensions.final +@typing.final class AbilityData(google.protobuf.message.Message): """May not relevant: queueable (everything is queueable). May not be important: AbilSetId - marine stim, marauder stim. @@ -152,12 +153,12 @@ class AbilityData(google.protobuf.message.Message): is_instant_placement: builtins.bool | None = ..., cast_range: builtins.float | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "allow_autocast", b"allow_autocast", "allow_minimap", b"allow_minimap", "available", b"available", "button_name", b"button_name", "cast_range", b"cast_range", "footprint_radius", b"footprint_radius", "friendly_name", b"friendly_name", "hotkey", b"hotkey", "is_building", b"is_building", "is_instant_placement", b"is_instant_placement", "link_index", b"link_index", "link_name", b"link_name", "remaps_to_ability_id", b"remaps_to_ability_id", "target", b"target"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "allow_autocast", b"allow_autocast", "allow_minimap", b"allow_minimap", "available", b"available", "button_name", b"button_name", "cast_range", b"cast_range", "footprint_radius", b"footprint_radius", "friendly_name", b"friendly_name", "hotkey", b"hotkey", "is_building", b"is_building", "is_instant_placement", b"is_instant_placement", "link_index", b"link_index", "link_name", b"link_name", "remaps_to_ability_id", b"remaps_to_ability_id", "target", b"target"]) -> None: ... + def HasField(self, field_name: typing.Literal["ability_id", b"ability_id", "allow_autocast", b"allow_autocast", "allow_minimap", b"allow_minimap", "available", b"available", "button_name", b"button_name", "cast_range", b"cast_range", "footprint_radius", b"footprint_radius", "friendly_name", b"friendly_name", "hotkey", b"hotkey", "is_building", b"is_building", "is_instant_placement", b"is_instant_placement", "link_index", b"link_index", "link_name", b"link_name", "remaps_to_ability_id", b"remaps_to_ability_id", "target", b"target"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["ability_id", b"ability_id", "allow_autocast", b"allow_autocast", "allow_minimap", b"allow_minimap", "available", b"available", "button_name", b"button_name", "cast_range", b"cast_range", "footprint_radius", b"footprint_radius", "friendly_name", b"friendly_name", "hotkey", b"hotkey", "is_building", b"is_building", "is_instant_placement", b"is_instant_placement", "link_index", b"link_index", "link_name", b"link_name", "remaps_to_ability_id", b"remaps_to_ability_id", "target", b"target"]) -> None: ... global___AbilityData = AbilityData -@typing_extensions.final +@typing.final class DamageBonus(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -171,12 +172,12 @@ class DamageBonus(google.protobuf.message.Message): attribute: global___Attribute.ValueType | None = ..., bonus: builtins.float | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["attribute", b"attribute", "bonus", b"bonus"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["attribute", b"attribute", "bonus", b"bonus"]) -> None: ... + def HasField(self, field_name: typing.Literal["attribute", b"attribute", "bonus", b"bonus"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["attribute", b"attribute", "bonus", b"bonus"]) -> None: ... global___DamageBonus = DamageBonus -@typing_extensions.final +@typing.final class Weapon(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -203,13 +204,13 @@ class Weapon(google.protobuf.message.Message): SPEED_FIELD_NUMBER: builtins.int type: global___Weapon.TargetType.ValueType damage: builtins.float - @property - def damage_bonus(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DamageBonus]: ... attacks: builtins.int """Number of hits per attack. (eg. Colossus has 2 beams)""" range: builtins.float speed: builtins.float """Time between attacks.""" + @property + def damage_bonus(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DamageBonus]: ... def __init__( self, *, @@ -220,12 +221,12 @@ class Weapon(google.protobuf.message.Message): range: builtins.float | None = ..., speed: builtins.float | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["attacks", b"attacks", "damage", b"damage", "range", b"range", "speed", b"speed", "type", b"type"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["attacks", b"attacks", "damage", b"damage", "damage_bonus", b"damage_bonus", "range", b"range", "speed", b"speed", "type", b"type"]) -> None: ... + def HasField(self, field_name: typing.Literal["attacks", b"attacks", "damage", b"damage", "range", b"range", "speed", b"speed", "type", b"type"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["attacks", b"attacks", "damage", b"damage", "damage_bonus", b"damage_bonus", "range", b"range", "speed", b"speed", "type", b"type"]) -> None: ... global___Weapon = Weapon -@typing_extensions.final +@typing.final class UnitTypeData(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -271,20 +272,22 @@ class UnitTypeData(google.protobuf.message.Message): has_minerals: builtins.bool sight_range: builtins.float """Range unit reveals vision.""" - @property - def tech_alias(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: - """Other units that satisfy the same tech requirement.""" unit_alias: builtins.int """The morphed variant of this unit.""" tech_requirement: builtins.int """Structure required to build this unit. (Or any with the same tech_alias)""" require_attached: builtins.bool """Whether tech_requirement is an add-on.""" + movement_speed: builtins.float + armor: builtins.float + @property + def tech_alias(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: + """Other units that satisfy the same tech requirement.""" + @property def attributes(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[global___Attribute.ValueType]: """Values include changes from upgrades""" - movement_speed: builtins.float - armor: builtins.float + @property def weapons(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Weapon]: ... def __init__( @@ -313,12 +316,12 @@ class UnitTypeData(google.protobuf.message.Message): armor: builtins.float | None = ..., weapons: collections.abc.Iterable[global___Weapon] | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "armor", b"armor", "available", b"available", "build_time", b"build_time", "cargo_size", b"cargo_size", "food_provided", b"food_provided", "food_required", b"food_required", "has_minerals", b"has_minerals", "has_vespene", b"has_vespene", "mineral_cost", b"mineral_cost", "movement_speed", b"movement_speed", "name", b"name", "race", b"race", "require_attached", b"require_attached", "sight_range", b"sight_range", "tech_requirement", b"tech_requirement", "unit_alias", b"unit_alias", "unit_id", b"unit_id", "vespene_cost", b"vespene_cost"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "armor", b"armor", "attributes", b"attributes", "available", b"available", "build_time", b"build_time", "cargo_size", b"cargo_size", "food_provided", b"food_provided", "food_required", b"food_required", "has_minerals", b"has_minerals", "has_vespene", b"has_vespene", "mineral_cost", b"mineral_cost", "movement_speed", b"movement_speed", "name", b"name", "race", b"race", "require_attached", b"require_attached", "sight_range", b"sight_range", "tech_alias", b"tech_alias", "tech_requirement", b"tech_requirement", "unit_alias", b"unit_alias", "unit_id", b"unit_id", "vespene_cost", b"vespene_cost", "weapons", b"weapons"]) -> None: ... + def HasField(self, field_name: typing.Literal["ability_id", b"ability_id", "armor", b"armor", "available", b"available", "build_time", b"build_time", "cargo_size", b"cargo_size", "food_provided", b"food_provided", "food_required", b"food_required", "has_minerals", b"has_minerals", "has_vespene", b"has_vespene", "mineral_cost", b"mineral_cost", "movement_speed", b"movement_speed", "name", b"name", "race", b"race", "require_attached", b"require_attached", "sight_range", b"sight_range", "tech_requirement", b"tech_requirement", "unit_alias", b"unit_alias", "unit_id", b"unit_id", "vespene_cost", b"vespene_cost"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["ability_id", b"ability_id", "armor", b"armor", "attributes", b"attributes", "available", b"available", "build_time", b"build_time", "cargo_size", b"cargo_size", "food_provided", b"food_provided", "food_required", b"food_required", "has_minerals", b"has_minerals", "has_vespene", b"has_vespene", "mineral_cost", b"mineral_cost", "movement_speed", b"movement_speed", "name", b"name", "race", b"race", "require_attached", b"require_attached", "sight_range", b"sight_range", "tech_alias", b"tech_alias", "tech_requirement", b"tech_requirement", "unit_alias", b"unit_alias", "unit_id", b"unit_id", "vespene_cost", b"vespene_cost", "weapons", b"weapons"]) -> None: ... global___UnitTypeData = UnitTypeData -@typing_extensions.final +@typing.final class UpgradeData(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -345,12 +348,12 @@ class UpgradeData(google.protobuf.message.Message): research_time: builtins.float | None = ..., ability_id: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "mineral_cost", b"mineral_cost", "name", b"name", "research_time", b"research_time", "upgrade_id", b"upgrade_id", "vespene_cost", b"vespene_cost"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "mineral_cost", b"mineral_cost", "name", b"name", "research_time", b"research_time", "upgrade_id", b"upgrade_id", "vespene_cost", b"vespene_cost"]) -> None: ... + def HasField(self, field_name: typing.Literal["ability_id", b"ability_id", "mineral_cost", b"mineral_cost", "name", b"name", "research_time", b"research_time", "upgrade_id", b"upgrade_id", "vespene_cost", b"vespene_cost"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["ability_id", b"ability_id", "mineral_cost", b"mineral_cost", "name", b"name", "research_time", b"research_time", "upgrade_id", b"upgrade_id", "vespene_cost", b"vespene_cost"]) -> None: ... global___UpgradeData = UpgradeData -@typing_extensions.final +@typing.final class BuffData(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -365,12 +368,12 @@ class BuffData(google.protobuf.message.Message): buff_id: builtins.int | None = ..., name: builtins.str | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["buff_id", b"buff_id", "name", b"name"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["buff_id", b"buff_id", "name", b"name"]) -> None: ... + def HasField(self, field_name: typing.Literal["buff_id", b"buff_id", "name", b"name"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["buff_id", b"buff_id", "name", b"name"]) -> None: ... global___BuffData = BuffData -@typing_extensions.final +@typing.final class EffectData(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -391,7 +394,7 @@ class EffectData(google.protobuf.message.Message): friendly_name: builtins.str | None = ..., radius: builtins.float | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["effect_id", b"effect_id", "friendly_name", b"friendly_name", "name", b"name", "radius", b"radius"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["effect_id", b"effect_id", "friendly_name", b"friendly_name", "name", b"name", "radius", b"radius"]) -> None: ... + def HasField(self, field_name: typing.Literal["effect_id", b"effect_id", "friendly_name", b"friendly_name", "name", b"name", "radius", b"radius"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["effect_id", b"effect_id", "friendly_name", b"friendly_name", "name", b"name", "radius", b"radius"]) -> None: ... global___EffectData = EffectData diff --git a/stubs/s2clientprotocol/s2clientprotocol/debug_pb2.pyi b/stubs/s2clientprotocol/s2clientprotocol/debug_pb2.pyi index 39c19873b..658d5bd20 100644 --- a/stubs/s2clientprotocol/s2clientprotocol/debug_pb2.pyi +++ b/stubs/s2clientprotocol/s2clientprotocol/debug_pb2.pyi @@ -2,6 +2,7 @@ @generated by mypy-protobuf. Do not edit manually! isort:skip_file """ + import builtins import collections.abc import sys @@ -55,7 +56,7 @@ upgrade: DebugGameState.ValueType # 11 fast_build: DebugGameState.ValueType # 12 global___DebugGameState = DebugGameState -@typing_extensions.final +@typing.final class DebugCommand(google.protobuf.message.Message): """Issue various useful commands to the game engine.""" @@ -69,9 +70,9 @@ class DebugCommand(google.protobuf.message.Message): SCORE_FIELD_NUMBER: builtins.int END_GAME_FIELD_NUMBER: builtins.int UNIT_VALUE_FIELD_NUMBER: builtins.int + game_state: global___DebugGameState.ValueType @property def draw(self) -> global___DebugDraw: ... - game_state: global___DebugGameState.ValueType @property def create_unit(self) -> global___DebugCreateUnit: ... @property @@ -81,6 +82,7 @@ class DebugCommand(google.protobuf.message.Message): @property def score(self) -> global___DebugSetScore: """Useful only for single-player "curriculum" maps.""" + @property def end_game(self) -> global___DebugEndGame: ... @property @@ -97,13 +99,13 @@ class DebugCommand(google.protobuf.message.Message): end_game: global___DebugEndGame | None = ..., unit_value: global___DebugSetUnitValue | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["command", b"command", "create_unit", b"create_unit", "draw", b"draw", "end_game", b"end_game", "game_state", b"game_state", "kill_unit", b"kill_unit", "score", b"score", "test_process", b"test_process", "unit_value", b"unit_value"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["command", b"command", "create_unit", b"create_unit", "draw", b"draw", "end_game", b"end_game", "game_state", b"game_state", "kill_unit", b"kill_unit", "score", b"score", "test_process", b"test_process", "unit_value", b"unit_value"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["command", b"command"]) -> typing_extensions.Literal["draw", "game_state", "create_unit", "kill_unit", "test_process", "score", "end_game", "unit_value"] | None: ... + def HasField(self, field_name: typing.Literal["command", b"command", "create_unit", b"create_unit", "draw", b"draw", "end_game", b"end_game", "game_state", b"game_state", "kill_unit", b"kill_unit", "score", b"score", "test_process", b"test_process", "unit_value", b"unit_value"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["command", b"command", "create_unit", b"create_unit", "draw", b"draw", "end_game", b"end_game", "game_state", b"game_state", "kill_unit", b"kill_unit", "score", b"score", "test_process", b"test_process", "unit_value", b"unit_value"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["command", b"command"]) -> typing.Literal["draw", "game_state", "create_unit", "kill_unit", "test_process", "score", "end_game", "unit_value"] | None: ... global___DebugCommand = DebugCommand -@typing_extensions.final +@typing.final class DebugDraw(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -127,11 +129,11 @@ class DebugDraw(google.protobuf.message.Message): boxes: collections.abc.Iterable[global___DebugBox] | None = ..., spheres: collections.abc.Iterable[global___DebugSphere] | None = ..., ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["boxes", b"boxes", "lines", b"lines", "spheres", b"spheres", "text", b"text"]) -> None: ... + def ClearField(self, field_name: typing.Literal["boxes", b"boxes", "lines", b"lines", "spheres", b"spheres", "text", b"text"]) -> None: ... global___DebugDraw = DebugDraw -@typing_extensions.final +@typing.final class Line(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -147,12 +149,12 @@ class Line(google.protobuf.message.Message): p0: s2clientprotocol.common_pb2.Point | None = ..., p1: s2clientprotocol.common_pb2.Point | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["p0", b"p0", "p1", b"p1"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["p0", b"p0", "p1", b"p1"]) -> None: ... + def HasField(self, field_name: typing.Literal["p0", b"p0", "p1", b"p1"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["p0", b"p0", "p1", b"p1"]) -> None: ... global___Line = Line -@typing_extensions.final +@typing.final class Color(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -169,12 +171,12 @@ class Color(google.protobuf.message.Message): g: builtins.int | None = ..., b: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["b", b"b", "g", b"g", "r", b"r"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["b", b"b", "g", b"g", "r", b"r"]) -> None: ... + def HasField(self, field_name: typing.Literal["b", b"b", "g", b"g", "r", b"r"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["b", b"b", "g", b"g", "r", b"r"]) -> None: ... global___Color = Color -@typing_extensions.final +@typing.final class DebugText(google.protobuf.message.Message): """Display debug text on screen.""" @@ -185,18 +187,20 @@ class DebugText(google.protobuf.message.Message): VIRTUAL_POS_FIELD_NUMBER: builtins.int WORLD_POS_FIELD_NUMBER: builtins.int SIZE_FIELD_NUMBER: builtins.int - @property - def color(self) -> global___Color: ... text: builtins.str """Text to display.""" + size: builtins.int + """Pixel height of the text. Defaults to 8px.""" + @property + def color(self) -> global___Color: ... @property def virtual_pos(self) -> s2clientprotocol.common_pb2.Point: """Virtualized position in 2D (the screen is 0..1, 0..1 for any resolution).""" + @property def world_pos(self) -> s2clientprotocol.common_pb2.Point: """Position in the world.""" - size: builtins.int - """Pixel height of the text. Defaults to 8px.""" + def __init__( self, *, @@ -206,12 +210,12 @@ class DebugText(google.protobuf.message.Message): world_pos: s2clientprotocol.common_pb2.Point | None = ..., size: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["color", b"color", "size", b"size", "text", b"text", "virtual_pos", b"virtual_pos", "world_pos", b"world_pos"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["color", b"color", "size", b"size", "text", b"text", "virtual_pos", b"virtual_pos", "world_pos", b"world_pos"]) -> None: ... + def HasField(self, field_name: typing.Literal["color", b"color", "size", b"size", "text", b"text", "virtual_pos", b"virtual_pos", "world_pos", b"world_pos"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["color", b"color", "size", b"size", "text", b"text", "virtual_pos", b"virtual_pos", "world_pos", b"world_pos"]) -> None: ... global___DebugText = DebugText -@typing_extensions.final +@typing.final class DebugLine(google.protobuf.message.Message): """Display debug lines on screen.""" @@ -224,18 +228,19 @@ class DebugLine(google.protobuf.message.Message): @property def line(self) -> global___Line: """World space line.""" + def __init__( self, *, color: global___Color | None = ..., line: global___Line | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["color", b"color", "line", b"line"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["color", b"color", "line", b"line"]) -> None: ... + def HasField(self, field_name: typing.Literal["color", b"color", "line", b"line"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["color", b"color", "line", b"line"]) -> None: ... global___DebugLine = DebugLine -@typing_extensions.final +@typing.final class DebugBox(google.protobuf.message.Message): """Display debug boxes on screen.""" @@ -257,12 +262,12 @@ class DebugBox(google.protobuf.message.Message): min: s2clientprotocol.common_pb2.Point | None = ..., max: s2clientprotocol.common_pb2.Point | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["color", b"color", "max", b"max", "min", b"min"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["color", b"color", "max", b"max", "min", b"min"]) -> None: ... + def HasField(self, field_name: typing.Literal["color", b"color", "max", b"max", "min", b"min"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["color", b"color", "max", b"max", "min", b"min"]) -> None: ... global___DebugBox = DebugBox -@typing_extensions.final +@typing.final class DebugSphere(google.protobuf.message.Message): """Display debug spheres on screen.""" @@ -271,11 +276,11 @@ class DebugSphere(google.protobuf.message.Message): COLOR_FIELD_NUMBER: builtins.int P_FIELD_NUMBER: builtins.int R_FIELD_NUMBER: builtins.int + r: builtins.float @property def color(self) -> global___Color: ... @property def p(self) -> s2clientprotocol.common_pb2.Point: ... - r: builtins.float def __init__( self, *, @@ -283,12 +288,12 @@ class DebugSphere(google.protobuf.message.Message): p: s2clientprotocol.common_pb2.Point | None = ..., r: builtins.float | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["color", b"color", "p", b"p", "r", b"r"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["color", b"color", "p", b"p", "r", b"r"]) -> None: ... + def HasField(self, field_name: typing.Literal["color", b"color", "p", b"p", "r", b"r"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["color", b"color", "p", b"p", "r", b"r"]) -> None: ... global___DebugSphere = DebugSphere -@typing_extensions.final +@typing.final class DebugCreateUnit(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -298,9 +303,9 @@ class DebugCreateUnit(google.protobuf.message.Message): QUANTITY_FIELD_NUMBER: builtins.int unit_type: builtins.int owner: builtins.int + quantity: builtins.int @property def pos(self) -> s2clientprotocol.common_pb2.Point2D: ... - quantity: builtins.int def __init__( self, *, @@ -309,12 +314,12 @@ class DebugCreateUnit(google.protobuf.message.Message): pos: s2clientprotocol.common_pb2.Point2D | None = ..., quantity: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["owner", b"owner", "pos", b"pos", "quantity", b"quantity", "unit_type", b"unit_type"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["owner", b"owner", "pos", b"pos", "quantity", b"quantity", "unit_type", b"unit_type"]) -> None: ... + def HasField(self, field_name: typing.Literal["owner", b"owner", "pos", b"pos", "quantity", b"quantity", "unit_type", b"unit_type"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["owner", b"owner", "pos", b"pos", "quantity", b"quantity", "unit_type", b"unit_type"]) -> None: ... global___DebugCreateUnit = DebugCreateUnit -@typing_extensions.final +@typing.final class DebugKillUnit(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -326,11 +331,11 @@ class DebugKillUnit(google.protobuf.message.Message): *, tag: collections.abc.Iterable[builtins.int] | None = ..., ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["tag", b"tag"]) -> None: ... + def ClearField(self, field_name: typing.Literal["tag", b"tag"]) -> None: ... global___DebugKillUnit = DebugKillUnit -@typing_extensions.final +@typing.final class DebugTestProcess(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -359,12 +364,12 @@ class DebugTestProcess(google.protobuf.message.Message): test: global___DebugTestProcess.Test.ValueType | None = ..., delay_ms: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["delay_ms", b"delay_ms", "test", b"test"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["delay_ms", b"delay_ms", "test", b"test"]) -> None: ... + def HasField(self, field_name: typing.Literal["delay_ms", b"delay_ms", "test", b"test"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["delay_ms", b"delay_ms", "test", b"test"]) -> None: ... global___DebugTestProcess = DebugTestProcess -@typing_extensions.final +@typing.final class DebugSetScore(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -375,12 +380,12 @@ class DebugSetScore(google.protobuf.message.Message): *, score: builtins.float | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["score", b"score"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["score", b"score"]) -> None: ... + def HasField(self, field_name: typing.Literal["score", b"score"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["score", b"score"]) -> None: ... global___DebugSetScore = DebugSetScore -@typing_extensions.final +@typing.final class DebugEndGame(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -406,12 +411,12 @@ class DebugEndGame(google.protobuf.message.Message): *, end_result: global___DebugEndGame.EndResult.ValueType | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["end_result", b"end_result"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["end_result", b"end_result"]) -> None: ... + def HasField(self, field_name: typing.Literal["end_result", b"end_result"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["end_result", b"end_result"]) -> None: ... global___DebugEndGame = DebugEndGame -@typing_extensions.final +@typing.final class DebugSetUnitValue(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -443,7 +448,7 @@ class DebugSetUnitValue(google.protobuf.message.Message): value: builtins.float | None = ..., unit_tag: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["unit_tag", b"unit_tag", "unit_value", b"unit_value", "value", b"value"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["unit_tag", b"unit_tag", "unit_value", b"unit_value", "value", b"value"]) -> None: ... + def HasField(self, field_name: typing.Literal["unit_tag", b"unit_tag", "unit_value", b"unit_value", "value", b"value"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["unit_tag", b"unit_tag", "unit_value", b"unit_value", "value", b"value"]) -> None: ... global___DebugSetUnitValue = DebugSetUnitValue diff --git a/stubs/s2clientprotocol/s2clientprotocol/error_pb2.pyi b/stubs/s2clientprotocol/s2clientprotocol/error_pb2.pyi index 9839a0040..c21b03cbc 100644 --- a/stubs/s2clientprotocol/s2clientprotocol/error_pb2.pyi +++ b/stubs/s2clientprotocol/s2clientprotocol/error_pb2.pyi @@ -2,6 +2,7 @@ @generated by mypy-protobuf. Do not edit manually! isort:skip_file """ + import builtins import sys import typing diff --git a/stubs/s2clientprotocol/s2clientprotocol/query_pb2.pyi b/stubs/s2clientprotocol/s2clientprotocol/query_pb2.pyi index 53553c043..ea772e2f6 100644 --- a/stubs/s2clientprotocol/s2clientprotocol/query_pb2.pyi +++ b/stubs/s2clientprotocol/s2clientprotocol/query_pb2.pyi @@ -2,9 +2,10 @@ @generated by mypy-protobuf. Do not edit manually! isort:skip_file """ + import builtins import collections.abc -import typing as typing_extensions +import typing import google.protobuf.descriptor import google.protobuf.internal.containers @@ -14,7 +15,7 @@ import s2clientprotocol.error_pb2 DESCRIPTOR: google.protobuf.descriptor.FileDescriptor -@typing_extensions.final +@typing.final class RequestQuery(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -22,14 +23,14 @@ class RequestQuery(google.protobuf.message.Message): ABILITIES_FIELD_NUMBER: builtins.int PLACEMENTS_FIELD_NUMBER: builtins.int IGNORE_RESOURCE_REQUIREMENTS_FIELD_NUMBER: builtins.int + ignore_resource_requirements: builtins.bool + """Ignores requirements like food, minerals and so on.""" @property def pathing(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___RequestQueryPathing]: ... @property def abilities(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___RequestQueryAvailableAbilities]: ... @property def placements(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___RequestQueryBuildingPlacement]: ... - ignore_resource_requirements: builtins.bool - """Ignores requirements like food, minerals and so on.""" def __init__( self, *, @@ -38,12 +39,12 @@ class RequestQuery(google.protobuf.message.Message): placements: collections.abc.Iterable[global___RequestQueryBuildingPlacement] | None = ..., ignore_resource_requirements: builtins.bool | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["ignore_resource_requirements", b"ignore_resource_requirements"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["abilities", b"abilities", "ignore_resource_requirements", b"ignore_resource_requirements", "pathing", b"pathing", "placements", b"placements"]) -> None: ... + def HasField(self, field_name: typing.Literal["ignore_resource_requirements", b"ignore_resource_requirements"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["abilities", b"abilities", "ignore_resource_requirements", b"ignore_resource_requirements", "pathing", b"pathing", "placements", b"placements"]) -> None: ... global___RequestQuery = RequestQuery -@typing_extensions.final +@typing.final class ResponseQuery(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -63,11 +64,11 @@ class ResponseQuery(google.protobuf.message.Message): abilities: collections.abc.Iterable[global___ResponseQueryAvailableAbilities] | None = ..., placements: collections.abc.Iterable[global___ResponseQueryBuildingPlacement] | None = ..., ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["abilities", b"abilities", "pathing", b"pathing", "placements", b"placements"]) -> None: ... + def ClearField(self, field_name: typing.Literal["abilities", b"abilities", "pathing", b"pathing", "placements", b"placements"]) -> None: ... global___ResponseQuery = ResponseQuery -@typing_extensions.final +@typing.final class RequestQueryPathing(google.protobuf.message.Message): """--------------------------------------------------------------------------------------------------""" @@ -76,9 +77,9 @@ class RequestQueryPathing(google.protobuf.message.Message): START_POS_FIELD_NUMBER: builtins.int UNIT_TAG_FIELD_NUMBER: builtins.int END_POS_FIELD_NUMBER: builtins.int + unit_tag: builtins.int @property def start_pos(self) -> s2clientprotocol.common_pb2.Point2D: ... - unit_tag: builtins.int @property def end_pos(self) -> s2clientprotocol.common_pb2.Point2D: ... def __init__( @@ -88,13 +89,13 @@ class RequestQueryPathing(google.protobuf.message.Message): unit_tag: builtins.int | None = ..., end_pos: s2clientprotocol.common_pb2.Point2D | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["end_pos", b"end_pos", "start", b"start", "start_pos", b"start_pos", "unit_tag", b"unit_tag"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["end_pos", b"end_pos", "start", b"start", "start_pos", b"start_pos", "unit_tag", b"unit_tag"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["start", b"start"]) -> typing_extensions.Literal["start_pos", "unit_tag"] | None: ... + def HasField(self, field_name: typing.Literal["end_pos", b"end_pos", "start", b"start", "start_pos", b"start_pos", "unit_tag", b"unit_tag"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["end_pos", b"end_pos", "start", b"start", "start_pos", b"start_pos", "unit_tag", b"unit_tag"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["start", b"start"]) -> typing.Literal["start_pos", "unit_tag"] | None: ... global___RequestQueryPathing = RequestQueryPathing -@typing_extensions.final +@typing.final class ResponseQueryPathing(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -106,12 +107,12 @@ class ResponseQueryPathing(google.protobuf.message.Message): *, distance: builtins.float | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["distance", b"distance"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["distance", b"distance"]) -> None: ... + def HasField(self, field_name: typing.Literal["distance", b"distance"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["distance", b"distance"]) -> None: ... global___ResponseQueryPathing = ResponseQueryPathing -@typing_extensions.final +@typing.final class RequestQueryAvailableAbilities(google.protobuf.message.Message): """--------------------------------------------------------------------------------------------------""" @@ -124,22 +125,22 @@ class RequestQueryAvailableAbilities(google.protobuf.message.Message): *, unit_tag: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["unit_tag", b"unit_tag"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["unit_tag", b"unit_tag"]) -> None: ... + def HasField(self, field_name: typing.Literal["unit_tag", b"unit_tag"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["unit_tag", b"unit_tag"]) -> None: ... global___RequestQueryAvailableAbilities = RequestQueryAvailableAbilities -@typing_extensions.final +@typing.final class ResponseQueryAvailableAbilities(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor ABILITIES_FIELD_NUMBER: builtins.int UNIT_TAG_FIELD_NUMBER: builtins.int UNIT_TYPE_ID_FIELD_NUMBER: builtins.int - @property - def abilities(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[s2clientprotocol.common_pb2.AvailableAbility]: ... unit_tag: builtins.int unit_type_id: builtins.int + @property + def abilities(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[s2clientprotocol.common_pb2.AvailableAbility]: ... def __init__( self, *, @@ -147,12 +148,12 @@ class ResponseQueryAvailableAbilities(google.protobuf.message.Message): unit_tag: builtins.int | None = ..., unit_type_id: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["unit_tag", b"unit_tag", "unit_type_id", b"unit_type_id"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["abilities", b"abilities", "unit_tag", b"unit_tag", "unit_type_id", b"unit_type_id"]) -> None: ... + def HasField(self, field_name: typing.Literal["unit_tag", b"unit_tag", "unit_type_id", b"unit_type_id"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["abilities", b"abilities", "unit_tag", b"unit_tag", "unit_type_id", b"unit_type_id"]) -> None: ... global___ResponseQueryAvailableAbilities = ResponseQueryAvailableAbilities -@typing_extensions.final +@typing.final class RequestQueryBuildingPlacement(google.protobuf.message.Message): """--------------------------------------------------------------------------------------------------""" @@ -162,10 +163,10 @@ class RequestQueryBuildingPlacement(google.protobuf.message.Message): TARGET_POS_FIELD_NUMBER: builtins.int PLACING_UNIT_TAG_FIELD_NUMBER: builtins.int ability_id: builtins.int - @property - def target_pos(self) -> s2clientprotocol.common_pb2.Point2D: ... placing_unit_tag: builtins.int """Not required""" + @property + def target_pos(self) -> s2clientprotocol.common_pb2.Point2D: ... def __init__( self, *, @@ -173,12 +174,12 @@ class RequestQueryBuildingPlacement(google.protobuf.message.Message): target_pos: s2clientprotocol.common_pb2.Point2D | None = ..., placing_unit_tag: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "placing_unit_tag", b"placing_unit_tag", "target_pos", b"target_pos"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "placing_unit_tag", b"placing_unit_tag", "target_pos", b"target_pos"]) -> None: ... + def HasField(self, field_name: typing.Literal["ability_id", b"ability_id", "placing_unit_tag", b"placing_unit_tag", "target_pos", b"target_pos"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["ability_id", b"ability_id", "placing_unit_tag", b"placing_unit_tag", "target_pos", b"target_pos"]) -> None: ... global___RequestQueryBuildingPlacement = RequestQueryBuildingPlacement -@typing_extensions.final +@typing.final class ResponseQueryBuildingPlacement(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -189,7 +190,7 @@ class ResponseQueryBuildingPlacement(google.protobuf.message.Message): *, result: s2clientprotocol.error_pb2.ActionResult.ValueType | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["result", b"result"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["result", b"result"]) -> None: ... + def HasField(self, field_name: typing.Literal["result", b"result"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["result", b"result"]) -> None: ... global___ResponseQueryBuildingPlacement = ResponseQueryBuildingPlacement diff --git a/stubs/s2clientprotocol/s2clientprotocol/raw_pb2.pyi b/stubs/s2clientprotocol/s2clientprotocol/raw_pb2.pyi index 3afb3e820..35a08c233 100644 --- a/stubs/s2clientprotocol/s2clientprotocol/raw_pb2.pyi +++ b/stubs/s2clientprotocol/s2clientprotocol/raw_pb2.pyi @@ -2,6 +2,7 @@ @generated by mypy-protobuf. Do not edit manually! isort:skip_file """ + import builtins import collections.abc import sys @@ -89,7 +90,7 @@ NotCloaked: CloakState.ValueType # 3 CloakedAllied: CloakState.ValueType # 4 global___CloakState = CloakState -@typing_extensions.final +@typing.final class StartRaw(google.protobuf.message.Message): """ Start @@ -106,21 +107,27 @@ class StartRaw(google.protobuf.message.Message): @property def map_size(self) -> s2clientprotocol.common_pb2.Size2DI: """Width and height of the map.""" + @property def pathing_grid(self) -> s2clientprotocol.common_pb2.ImageData: """1 bit bitmap of the pathing grid.""" + @property def terrain_height(self) -> s2clientprotocol.common_pb2.ImageData: """1 byte bitmap of the terrain height.""" + @property def placement_grid(self) -> s2clientprotocol.common_pb2.ImageData: """1 bit bitmap of the building placement grid.""" + @property def playable_area(self) -> s2clientprotocol.common_pb2.RectangleI: """The playable cells.""" + @property def start_locations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[s2clientprotocol.common_pb2.Point2D]: """Possible start locations for players.""" + def __init__( self, *, @@ -131,12 +138,12 @@ class StartRaw(google.protobuf.message.Message): playable_area: s2clientprotocol.common_pb2.RectangleI | None = ..., start_locations: collections.abc.Iterable[s2clientprotocol.common_pb2.Point2D] | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["map_size", b"map_size", "pathing_grid", b"pathing_grid", "placement_grid", b"placement_grid", "playable_area", b"playable_area", "terrain_height", b"terrain_height"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["map_size", b"map_size", "pathing_grid", b"pathing_grid", "placement_grid", b"placement_grid", "playable_area", b"playable_area", "start_locations", b"start_locations", "terrain_height", b"terrain_height"]) -> None: ... + def HasField(self, field_name: typing.Literal["map_size", b"map_size", "pathing_grid", b"pathing_grid", "placement_grid", b"placement_grid", "playable_area", b"playable_area", "terrain_height", b"terrain_height"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["map_size", b"map_size", "pathing_grid", b"pathing_grid", "placement_grid", b"placement_grid", "playable_area", b"playable_area", "start_locations", b"start_locations", "terrain_height", b"terrain_height"]) -> None: ... global___StartRaw = StartRaw -@typing_extensions.final +@typing.final class ObservationRaw(google.protobuf.message.Message): """ Observation @@ -157,6 +164,7 @@ class ObservationRaw(google.protobuf.message.Message): @property def map_state(self) -> global___MapState: """Fog of war, creep and so on. Board stuff that changes per frame.""" + @property def event(self) -> global___Event: ... @property @@ -173,42 +181,42 @@ class ObservationRaw(google.protobuf.message.Message): effects: collections.abc.Iterable[global___Effect] | None = ..., radar: collections.abc.Iterable[global___RadarRing] | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["event", b"event", "map_state", b"map_state", "player", b"player"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["effects", b"effects", "event", b"event", "map_state", b"map_state", "player", b"player", "radar", b"radar", "units", b"units"]) -> None: ... + def HasField(self, field_name: typing.Literal["event", b"event", "map_state", b"map_state", "player", b"player"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["effects", b"effects", "event", b"event", "map_state", b"map_state", "player", b"player", "radar", b"radar", "units", b"units"]) -> None: ... global___ObservationRaw = ObservationRaw -@typing_extensions.final +@typing.final class RadarRing(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor POS_FIELD_NUMBER: builtins.int RADIUS_FIELD_NUMBER: builtins.int + radius: builtins.float @property def pos(self) -> s2clientprotocol.common_pb2.Point: ... - radius: builtins.float def __init__( self, *, pos: s2clientprotocol.common_pb2.Point | None = ..., radius: builtins.float | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["pos", b"pos", "radius", b"radius"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["pos", b"pos", "radius", b"radius"]) -> None: ... + def HasField(self, field_name: typing.Literal["pos", b"pos", "radius", b"radius"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["pos", b"pos", "radius", b"radius"]) -> None: ... global___RadarRing = RadarRing -@typing_extensions.final +@typing.final class PowerSource(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor POS_FIELD_NUMBER: builtins.int RADIUS_FIELD_NUMBER: builtins.int TAG_FIELD_NUMBER: builtins.int - @property - def pos(self) -> s2clientprotocol.common_pb2.Point: ... radius: builtins.float tag: builtins.int + @property + def pos(self) -> s2clientprotocol.common_pb2.Point: ... def __init__( self, *, @@ -216,12 +224,12 @@ class PowerSource(google.protobuf.message.Message): radius: builtins.float | None = ..., tag: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["pos", b"pos", "radius", b"radius", "tag", b"tag"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["pos", b"pos", "radius", b"radius", "tag", b"tag"]) -> None: ... + def HasField(self, field_name: typing.Literal["pos", b"pos", "radius", b"radius", "tag", b"tag"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["pos", b"pos", "radius", b"radius", "tag", b"tag"]) -> None: ... global___PowerSource = PowerSource -@typing_extensions.final +@typing.final class PlayerRaw(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -235,6 +243,7 @@ class PlayerRaw(google.protobuf.message.Message): @property def upgrade_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: """TODO: Add to UI observation?""" + def __init__( self, *, @@ -242,12 +251,12 @@ class PlayerRaw(google.protobuf.message.Message): camera: s2clientprotocol.common_pb2.Point | None = ..., upgrade_ids: collections.abc.Iterable[builtins.int] | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["camera", b"camera"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["camera", b"camera", "power_sources", b"power_sources", "upgrade_ids", b"upgrade_ids"]) -> None: ... + def HasField(self, field_name: typing.Literal["camera", b"camera"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["camera", b"camera", "power_sources", b"power_sources", "upgrade_ids", b"upgrade_ids"]) -> None: ... global___PlayerRaw = PlayerRaw -@typing_extensions.final +@typing.final class UnitOrder(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -256,11 +265,11 @@ class UnitOrder(google.protobuf.message.Message): TARGET_UNIT_TAG_FIELD_NUMBER: builtins.int PROGRESS_FIELD_NUMBER: builtins.int ability_id: builtins.int - @property - def target_world_space_pos(self) -> s2clientprotocol.common_pb2.Point: ... target_unit_tag: builtins.int progress: builtins.float """Progress of train abilities. Range: [0.0, 1.0]""" + @property + def target_world_space_pos(self) -> s2clientprotocol.common_pb2.Point: ... def __init__( self, *, @@ -269,13 +278,13 @@ class UnitOrder(google.protobuf.message.Message): target_unit_tag: builtins.int | None = ..., progress: builtins.float | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "progress", b"progress", "target", b"target", "target_unit_tag", b"target_unit_tag", "target_world_space_pos", b"target_world_space_pos"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "progress", b"progress", "target", b"target", "target_unit_tag", b"target_unit_tag", "target_world_space_pos", b"target_world_space_pos"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["target", b"target"]) -> typing_extensions.Literal["target_world_space_pos", "target_unit_tag"] | None: ... + def HasField(self, field_name: typing.Literal["ability_id", b"ability_id", "progress", b"progress", "target", b"target", "target_unit_tag", b"target_unit_tag", "target_world_space_pos", b"target_world_space_pos"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["ability_id", b"ability_id", "progress", b"progress", "target", b"target", "target_unit_tag", b"target_unit_tag", "target_world_space_pos", b"target_world_space_pos"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["target", b"target"]) -> typing.Literal["target_world_space_pos", "target_unit_tag"] | None: ... global___UnitOrder = UnitOrder -@typing_extensions.final +@typing.final class PassengerUnit(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -307,34 +316,35 @@ class PassengerUnit(google.protobuf.message.Message): energy_max: builtins.float | None = ..., unit_type: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["energy", b"energy", "energy_max", b"energy_max", "health", b"health", "health_max", b"health_max", "shield", b"shield", "shield_max", b"shield_max", "tag", b"tag", "unit_type", b"unit_type"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["energy", b"energy", "energy_max", b"energy_max", "health", b"health", "health_max", b"health_max", "shield", b"shield", "shield_max", b"shield_max", "tag", b"tag", "unit_type", b"unit_type"]) -> None: ... + def HasField(self, field_name: typing.Literal["energy", b"energy", "energy_max", b"energy_max", "health", b"health", "health_max", b"health_max", "shield", b"shield", "shield_max", b"shield_max", "tag", b"tag", "unit_type", b"unit_type"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["energy", b"energy", "energy_max", b"energy_max", "health", b"health", "health_max", b"health_max", "shield", b"shield", "shield_max", b"shield_max", "tag", b"tag", "unit_type", b"unit_type"]) -> None: ... global___PassengerUnit = PassengerUnit -@typing_extensions.final +@typing.final class RallyTarget(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor POINT_FIELD_NUMBER: builtins.int TAG_FIELD_NUMBER: builtins.int + tag: builtins.int + """Only if it's targeting a unit.""" @property def point(self) -> s2clientprotocol.common_pb2.Point: """Will always be filled.""" - tag: builtins.int - """Only if it's targeting a unit.""" + def __init__( self, *, point: s2clientprotocol.common_pb2.Point | None = ..., tag: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["point", b"point", "tag", b"tag"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["point", b"point", "tag", b"tag"]) -> None: ... + def HasField(self, field_name: typing.Literal["point", b"point", "tag", b"tag"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["point", b"point", "tag", b"tag"]) -> None: ... global___RallyTarget = RallyTarget -@typing_extensions.final +@typing.final class Unit(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -389,15 +399,11 @@ class Unit(google.protobuf.message.Message): """Unique identifier for a unit""" unit_type: builtins.int owner: builtins.int - @property - def pos(self) -> s2clientprotocol.common_pb2.Point: ... facing: builtins.float radius: builtins.float build_progress: builtins.float """Range: [0.0, 1.0]""" cloak: global___CloakState.ValueType - @property - def buff_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: ... detect_range: builtins.float radar_range: builtins.float is_selected: builtins.bool @@ -424,12 +430,7 @@ class Unit(google.protobuf.message.Message): is_burrowed: builtins.bool is_hallucination: builtins.bool """Unit is your own or detected as a hallucination.""" - @property - def orders(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UnitOrder]: - """Not populated for enemies""" add_on_tag: builtins.int - @property - def passengers(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___PassengerUnit]: ... cargo_space_taken: builtins.int cargo_space_max: builtins.int assigned_harvesters: builtins.int @@ -441,6 +442,16 @@ class Unit(google.protobuf.message.Message): buff_duration_max: builtins.int """How long the buff or unit is still around (eg mule, broodling, chronoboost).""" @property + def pos(self) -> s2clientprotocol.common_pb2.Point: ... + @property + def buff_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: ... + @property + def orders(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UnitOrder]: + """Not populated for enemies""" + + @property + def passengers(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___PassengerUnit]: ... + @property def rally_targets(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___RallyTarget]: ... def __init__( self, @@ -490,12 +501,12 @@ class Unit(google.protobuf.message.Message): buff_duration_max: builtins.int | None = ..., rally_targets: collections.abc.Iterable[global___RallyTarget] | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["add_on_tag", b"add_on_tag", "alliance", b"alliance", "armor_upgrade_level", b"armor_upgrade_level", "assigned_harvesters", b"assigned_harvesters", "attack_upgrade_level", b"attack_upgrade_level", "buff_duration_max", b"buff_duration_max", "buff_duration_remain", b"buff_duration_remain", "build_progress", b"build_progress", "cargo_space_max", b"cargo_space_max", "cargo_space_taken", b"cargo_space_taken", "cloak", b"cloak", "detect_range", b"detect_range", "display_type", b"display_type", "energy", b"energy", "energy_max", b"energy_max", "engaged_target_tag", b"engaged_target_tag", "facing", b"facing", "health", b"health", "health_max", b"health_max", "ideal_harvesters", b"ideal_harvesters", "is_active", b"is_active", "is_blip", b"is_blip", "is_burrowed", b"is_burrowed", "is_flying", b"is_flying", "is_hallucination", b"is_hallucination", "is_on_screen", b"is_on_screen", "is_powered", b"is_powered", "is_selected", b"is_selected", "mineral_contents", b"mineral_contents", "owner", b"owner", "pos", b"pos", "radar_range", b"radar_range", "radius", b"radius", "shield", b"shield", "shield_max", b"shield_max", "shield_upgrade_level", b"shield_upgrade_level", "tag", b"tag", "unit_type", b"unit_type", "vespene_contents", b"vespene_contents", "weapon_cooldown", b"weapon_cooldown"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["add_on_tag", b"add_on_tag", "alliance", b"alliance", "armor_upgrade_level", b"armor_upgrade_level", "assigned_harvesters", b"assigned_harvesters", "attack_upgrade_level", b"attack_upgrade_level", "buff_duration_max", b"buff_duration_max", "buff_duration_remain", b"buff_duration_remain", "buff_ids", b"buff_ids", "build_progress", b"build_progress", "cargo_space_max", b"cargo_space_max", "cargo_space_taken", b"cargo_space_taken", "cloak", b"cloak", "detect_range", b"detect_range", "display_type", b"display_type", "energy", b"energy", "energy_max", b"energy_max", "engaged_target_tag", b"engaged_target_tag", "facing", b"facing", "health", b"health", "health_max", b"health_max", "ideal_harvesters", b"ideal_harvesters", "is_active", b"is_active", "is_blip", b"is_blip", "is_burrowed", b"is_burrowed", "is_flying", b"is_flying", "is_hallucination", b"is_hallucination", "is_on_screen", b"is_on_screen", "is_powered", b"is_powered", "is_selected", b"is_selected", "mineral_contents", b"mineral_contents", "orders", b"orders", "owner", b"owner", "passengers", b"passengers", "pos", b"pos", "radar_range", b"radar_range", "radius", b"radius", "rally_targets", b"rally_targets", "shield", b"shield", "shield_max", b"shield_max", "shield_upgrade_level", b"shield_upgrade_level", "tag", b"tag", "unit_type", b"unit_type", "vespene_contents", b"vespene_contents", "weapon_cooldown", b"weapon_cooldown"]) -> None: ... + def HasField(self, field_name: typing.Literal["add_on_tag", b"add_on_tag", "alliance", b"alliance", "armor_upgrade_level", b"armor_upgrade_level", "assigned_harvesters", b"assigned_harvesters", "attack_upgrade_level", b"attack_upgrade_level", "buff_duration_max", b"buff_duration_max", "buff_duration_remain", b"buff_duration_remain", "build_progress", b"build_progress", "cargo_space_max", b"cargo_space_max", "cargo_space_taken", b"cargo_space_taken", "cloak", b"cloak", "detect_range", b"detect_range", "display_type", b"display_type", "energy", b"energy", "energy_max", b"energy_max", "engaged_target_tag", b"engaged_target_tag", "facing", b"facing", "health", b"health", "health_max", b"health_max", "ideal_harvesters", b"ideal_harvesters", "is_active", b"is_active", "is_blip", b"is_blip", "is_burrowed", b"is_burrowed", "is_flying", b"is_flying", "is_hallucination", b"is_hallucination", "is_on_screen", b"is_on_screen", "is_powered", b"is_powered", "is_selected", b"is_selected", "mineral_contents", b"mineral_contents", "owner", b"owner", "pos", b"pos", "radar_range", b"radar_range", "radius", b"radius", "shield", b"shield", "shield_max", b"shield_max", "shield_upgrade_level", b"shield_upgrade_level", "tag", b"tag", "unit_type", b"unit_type", "vespene_contents", b"vespene_contents", "weapon_cooldown", b"weapon_cooldown"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["add_on_tag", b"add_on_tag", "alliance", b"alliance", "armor_upgrade_level", b"armor_upgrade_level", "assigned_harvesters", b"assigned_harvesters", "attack_upgrade_level", b"attack_upgrade_level", "buff_duration_max", b"buff_duration_max", "buff_duration_remain", b"buff_duration_remain", "buff_ids", b"buff_ids", "build_progress", b"build_progress", "cargo_space_max", b"cargo_space_max", "cargo_space_taken", b"cargo_space_taken", "cloak", b"cloak", "detect_range", b"detect_range", "display_type", b"display_type", "energy", b"energy", "energy_max", b"energy_max", "engaged_target_tag", b"engaged_target_tag", "facing", b"facing", "health", b"health", "health_max", b"health_max", "ideal_harvesters", b"ideal_harvesters", "is_active", b"is_active", "is_blip", b"is_blip", "is_burrowed", b"is_burrowed", "is_flying", b"is_flying", "is_hallucination", b"is_hallucination", "is_on_screen", b"is_on_screen", "is_powered", b"is_powered", "is_selected", b"is_selected", "mineral_contents", b"mineral_contents", "orders", b"orders", "owner", b"owner", "passengers", b"passengers", "pos", b"pos", "radar_range", b"radar_range", "radius", b"radius", "rally_targets", b"rally_targets", "shield", b"shield", "shield_max", b"shield_max", "shield_upgrade_level", b"shield_upgrade_level", "tag", b"tag", "unit_type", b"unit_type", "vespene_contents", b"vespene_contents", "weapon_cooldown", b"weapon_cooldown"]) -> None: ... global___Unit = Unit -@typing_extensions.final +@typing.final class MapState(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -504,21 +515,23 @@ class MapState(google.protobuf.message.Message): @property def visibility(self) -> s2clientprotocol.common_pb2.ImageData: """1 byte visibility layer.""" + @property def creep(self) -> s2clientprotocol.common_pb2.ImageData: """1 bit creep layer.""" + def __init__( self, *, visibility: s2clientprotocol.common_pb2.ImageData | None = ..., creep: s2clientprotocol.common_pb2.ImageData | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["creep", b"creep", "visibility", b"visibility"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["creep", b"creep", "visibility", b"visibility"]) -> None: ... + def HasField(self, field_name: typing.Literal["creep", b"creep", "visibility", b"visibility"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["creep", b"creep", "visibility", b"visibility"]) -> None: ... global___MapState = MapState -@typing_extensions.final +@typing.final class Event(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -530,11 +543,11 @@ class Event(google.protobuf.message.Message): *, dead_units: collections.abc.Iterable[builtins.int] | None = ..., ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["dead_units", b"dead_units"]) -> None: ... + def ClearField(self, field_name: typing.Literal["dead_units", b"dead_units"]) -> None: ... global___Event = Event -@typing_extensions.final +@typing.final class Effect(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -544,12 +557,13 @@ class Effect(google.protobuf.message.Message): OWNER_FIELD_NUMBER: builtins.int RADIUS_FIELD_NUMBER: builtins.int effect_id: builtins.int - @property - def pos(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[s2clientprotocol.common_pb2.Point2D]: - """Effect may impact multiple locations. (eg. Lurker attack)""" alliance: global___Alliance.ValueType owner: builtins.int radius: builtins.float + @property + def pos(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[s2clientprotocol.common_pb2.Point2D]: + """Effect may impact multiple locations. (eg. Lurker attack)""" + def __init__( self, *, @@ -559,12 +573,12 @@ class Effect(google.protobuf.message.Message): owner: builtins.int | None = ..., radius: builtins.float | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["alliance", b"alliance", "effect_id", b"effect_id", "owner", b"owner", "radius", b"radius"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["alliance", b"alliance", "effect_id", b"effect_id", "owner", b"owner", "pos", b"pos", "radius", b"radius"]) -> None: ... + def HasField(self, field_name: typing.Literal["alliance", b"alliance", "effect_id", b"effect_id", "owner", b"owner", "radius", b"radius"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["alliance", b"alliance", "effect_id", b"effect_id", "owner", b"owner", "pos", b"pos", "radius", b"radius"]) -> None: ... global___Effect = Effect -@typing_extensions.final +@typing.final class ActionRaw(google.protobuf.message.Message): """ Action @@ -588,13 +602,13 @@ class ActionRaw(google.protobuf.message.Message): camera_move: global___ActionRawCameraMove | None = ..., toggle_autocast: global___ActionRawToggleAutocast | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["action", b"action", "camera_move", b"camera_move", "toggle_autocast", b"toggle_autocast", "unit_command", b"unit_command"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["action", b"action", "camera_move", b"camera_move", "toggle_autocast", b"toggle_autocast", "unit_command", b"unit_command"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["action", b"action"]) -> typing_extensions.Literal["unit_command", "camera_move", "toggle_autocast"] | None: ... + def HasField(self, field_name: typing.Literal["action", b"action", "camera_move", b"camera_move", "toggle_autocast", b"toggle_autocast", "unit_command", b"unit_command"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["action", b"action", "camera_move", b"camera_move", "toggle_autocast", b"toggle_autocast", "unit_command", b"unit_command"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["action", b"action"]) -> typing.Literal["unit_command", "camera_move", "toggle_autocast"] | None: ... global___ActionRaw = ActionRaw -@typing_extensions.final +@typing.final class ActionRawUnitCommand(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -604,12 +618,12 @@ class ActionRawUnitCommand(google.protobuf.message.Message): UNIT_TAGS_FIELD_NUMBER: builtins.int QUEUE_COMMAND_FIELD_NUMBER: builtins.int ability_id: builtins.int + target_unit_tag: builtins.int + queue_command: builtins.bool @property def target_world_space_pos(self) -> s2clientprotocol.common_pb2.Point2D: ... - target_unit_tag: builtins.int @property def unit_tags(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: ... - queue_command: builtins.bool def __init__( self, *, @@ -619,13 +633,13 @@ class ActionRawUnitCommand(google.protobuf.message.Message): unit_tags: collections.abc.Iterable[builtins.int] | None = ..., queue_command: builtins.bool | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "queue_command", b"queue_command", "target", b"target", "target_unit_tag", b"target_unit_tag", "target_world_space_pos", b"target_world_space_pos"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "queue_command", b"queue_command", "target", b"target", "target_unit_tag", b"target_unit_tag", "target_world_space_pos", b"target_world_space_pos", "unit_tags", b"unit_tags"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["target", b"target"]) -> typing_extensions.Literal["target_world_space_pos", "target_unit_tag"] | None: ... + def HasField(self, field_name: typing.Literal["ability_id", b"ability_id", "queue_command", b"queue_command", "target", b"target", "target_unit_tag", b"target_unit_tag", "target_world_space_pos", b"target_world_space_pos"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["ability_id", b"ability_id", "queue_command", b"queue_command", "target", b"target", "target_unit_tag", b"target_unit_tag", "target_world_space_pos", b"target_world_space_pos", "unit_tags", b"unit_tags"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["target", b"target"]) -> typing.Literal["target_world_space_pos", "target_unit_tag"] | None: ... global___ActionRawUnitCommand = ActionRawUnitCommand -@typing_extensions.final +@typing.final class ActionRawCameraMove(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -637,12 +651,12 @@ class ActionRawCameraMove(google.protobuf.message.Message): *, center_world_space: s2clientprotocol.common_pb2.Point | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["center_world_space", b"center_world_space"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["center_world_space", b"center_world_space"]) -> None: ... + def HasField(self, field_name: typing.Literal["center_world_space", b"center_world_space"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["center_world_space", b"center_world_space"]) -> None: ... global___ActionRawCameraMove = ActionRawCameraMove -@typing_extensions.final +@typing.final class ActionRawToggleAutocast(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -657,7 +671,7 @@ class ActionRawToggleAutocast(google.protobuf.message.Message): ability_id: builtins.int | None = ..., unit_tags: collections.abc.Iterable[builtins.int] | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "unit_tags", b"unit_tags"]) -> None: ... + def HasField(self, field_name: typing.Literal["ability_id", b"ability_id"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["ability_id", b"ability_id", "unit_tags", b"unit_tags"]) -> None: ... global___ActionRawToggleAutocast = ActionRawToggleAutocast diff --git a/stubs/s2clientprotocol/s2clientprotocol/sc2api_pb2.pyi b/stubs/s2clientprotocol/s2clientprotocol/sc2api_pb2.pyi index c4ad8fee6..b97969723 100644 --- a/stubs/s2clientprotocol/s2clientprotocol/sc2api_pb2.pyi +++ b/stubs/s2clientprotocol/s2clientprotocol/sc2api_pb2.pyi @@ -2,6 +2,7 @@ @generated by mypy-protobuf. Do not edit manually! isort:skip_file """ + import builtins import collections.abc import sys @@ -215,7 +216,7 @@ Tie: Result.ValueType # 3 Undecided: Result.ValueType # 4 global___Result = Result -@typing_extensions.final +@typing.final class Request(google.protobuf.message.Message): """ Request/Response @@ -246,81 +247,103 @@ class Request(google.protobuf.message.Message): PING_FIELD_NUMBER: builtins.int DEBUG_FIELD_NUMBER: builtins.int ID_FIELD_NUMBER: builtins.int + id: builtins.int @property def create_game(self) -> global___RequestCreateGame: """Game Setup Send to host to initialize game. """ + @property def join_game(self) -> global___RequestJoinGame: """Send to host and all clients for game to begin.""" + @property def restart_game(self) -> global___RequestRestartGame: """Single player only. Reinitializes the game with the same player setup.""" + @property def start_replay(self) -> global___RequestStartReplay: """Start playing a replay.""" + @property def leave_game(self) -> global___RequestLeaveGame: """Multiplayer only. Disconnects from a multiplayer game, equivalent to surrender.""" + @property def quick_save(self) -> global___RequestQuickSave: """Saves game to an in-memory bookmark.""" + @property def quick_load(self) -> global___RequestQuickLoad: """Loads from an in-memory bookmark.""" + @property def quit(self) -> global___RequestQuit: """Terminates the application.""" + @property def game_info(self) -> global___RequestGameInfo: """During Game Static data about the current game and map. """ + @property def observation(self) -> global___RequestObservation: """Snapshot of the current game state.""" + @property def action(self) -> global___RequestAction: """Executes an action for a participant.""" + @property def obs_action(self) -> global___RequestObserverAction: """Executes an action for an observer.""" + @property def step(self) -> global___RequestStep: """Advances the game simulation.""" + @property def data(self) -> global___RequestData: """Data about different gameplay elements. May be different for different games.""" + @property def query(self) -> s2clientprotocol.query_pb2.RequestQuery: """Additional methods for inspecting game state.""" + @property def save_replay(self) -> global___RequestSaveReplay: """Generates a replay.""" + @property def map_command(self) -> global___RequestMapCommand: """Execute a particular trigger through a string interface""" + @property def replay_info(self) -> global___RequestReplayInfo: """Other. Returns metadata about a replay file. Does not load the replay. """ + @property def available_maps(self) -> global___RequestAvailableMaps: """Returns directory of maps that can be played on.""" + @property def save_map(self) -> global___RequestSaveMap: """Saves binary map data to the local temp directory.""" + @property def ping(self) -> global___RequestPing: """Debugging Network ping for testing connection. """ + @property def debug(self) -> global___RequestDebug: """Display debug information and execute debug actions.""" - id: builtins.int + def __init__( self, *, @@ -348,13 +371,13 @@ class Request(google.protobuf.message.Message): debug: global___RequestDebug | None = ..., id: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["action", b"action", "available_maps", b"available_maps", "create_game", b"create_game", "data", b"data", "debug", b"debug", "game_info", b"game_info", "id", b"id", "join_game", b"join_game", "leave_game", b"leave_game", "map_command", b"map_command", "obs_action", b"obs_action", "observation", b"observation", "ping", b"ping", "query", b"query", "quick_load", b"quick_load", "quick_save", b"quick_save", "quit", b"quit", "replay_info", b"replay_info", "request", b"request", "restart_game", b"restart_game", "save_map", b"save_map", "save_replay", b"save_replay", "start_replay", b"start_replay", "step", b"step"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["action", b"action", "available_maps", b"available_maps", "create_game", b"create_game", "data", b"data", "debug", b"debug", "game_info", b"game_info", "id", b"id", "join_game", b"join_game", "leave_game", b"leave_game", "map_command", b"map_command", "obs_action", b"obs_action", "observation", b"observation", "ping", b"ping", "query", b"query", "quick_load", b"quick_load", "quick_save", b"quick_save", "quit", b"quit", "replay_info", b"replay_info", "request", b"request", "restart_game", b"restart_game", "save_map", b"save_map", "save_replay", b"save_replay", "start_replay", b"start_replay", "step", b"step"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["request", b"request"]) -> typing_extensions.Literal["create_game", "join_game", "restart_game", "start_replay", "leave_game", "quick_save", "quick_load", "quit", "game_info", "observation", "action", "obs_action", "step", "data", "query", "save_replay", "map_command", "replay_info", "available_maps", "save_map", "ping", "debug"] | None: ... + def HasField(self, field_name: typing.Literal["action", b"action", "available_maps", b"available_maps", "create_game", b"create_game", "data", b"data", "debug", b"debug", "game_info", b"game_info", "id", b"id", "join_game", b"join_game", "leave_game", b"leave_game", "map_command", b"map_command", "obs_action", b"obs_action", "observation", b"observation", "ping", b"ping", "query", b"query", "quick_load", b"quick_load", "quick_save", b"quick_save", "quit", b"quit", "replay_info", b"replay_info", "request", b"request", "restart_game", b"restart_game", "save_map", b"save_map", "save_replay", b"save_replay", "start_replay", b"start_replay", "step", b"step"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["action", b"action", "available_maps", b"available_maps", "create_game", b"create_game", "data", b"data", "debug", b"debug", "game_info", b"game_info", "id", b"id", "join_game", b"join_game", "leave_game", b"leave_game", "map_command", b"map_command", "obs_action", b"obs_action", "observation", b"observation", "ping", b"ping", "query", b"query", "quick_load", b"quick_load", "quick_save", b"quick_save", "quit", b"quit", "replay_info", b"replay_info", "request", b"request", "restart_game", b"restart_game", "save_map", b"save_map", "save_replay", b"save_replay", "start_replay", b"start_replay", "step", b"step"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["request", b"request"]) -> typing.Literal["create_game", "join_game", "restart_game", "start_replay", "leave_game", "quick_save", "quick_load", "quit", "game_info", "observation", "action", "obs_action", "step", "data", "query", "save_replay", "map_command", "replay_info", "available_maps", "save_map", "ping", "debug"] | None: ... global___Request = Request -@typing_extensions.final +@typing.final class Response(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -383,6 +406,9 @@ class Response(google.protobuf.message.Message): ID_FIELD_NUMBER: builtins.int ERROR_FIELD_NUMBER: builtins.int STATUS_FIELD_NUMBER: builtins.int + id: builtins.int + status: global___Status.ValueType + """Should be sent back with all responses.""" @property def create_game(self) -> global___ResponseCreateGame: ... @property @@ -426,14 +452,13 @@ class Response(google.protobuf.message.Message): @property def ping(self) -> global___ResponsePing: """Debugging""" + @property def debug(self) -> global___ResponseDebug: ... - id: builtins.int @property def error(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: """If command is missing, this will contain the error. Otherwise this will contain any warnings.""" - status: global___Status.ValueType - """Should be sent back with all responses.""" + def __init__( self, *, @@ -463,13 +488,13 @@ class Response(google.protobuf.message.Message): error: collections.abc.Iterable[builtins.str] | None = ..., status: global___Status.ValueType | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["action", b"action", "available_maps", b"available_maps", "create_game", b"create_game", "data", b"data", "debug", b"debug", "game_info", b"game_info", "id", b"id", "join_game", b"join_game", "leave_game", b"leave_game", "map_command", b"map_command", "obs_action", b"obs_action", "observation", b"observation", "ping", b"ping", "query", b"query", "quick_load", b"quick_load", "quick_save", b"quick_save", "quit", b"quit", "replay_info", b"replay_info", "response", b"response", "restart_game", b"restart_game", "save_map", b"save_map", "save_replay", b"save_replay", "start_replay", b"start_replay", "status", b"status", "step", b"step"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["action", b"action", "available_maps", b"available_maps", "create_game", b"create_game", "data", b"data", "debug", b"debug", "error", b"error", "game_info", b"game_info", "id", b"id", "join_game", b"join_game", "leave_game", b"leave_game", "map_command", b"map_command", "obs_action", b"obs_action", "observation", b"observation", "ping", b"ping", "query", b"query", "quick_load", b"quick_load", "quick_save", b"quick_save", "quit", b"quit", "replay_info", b"replay_info", "response", b"response", "restart_game", b"restart_game", "save_map", b"save_map", "save_replay", b"save_replay", "start_replay", b"start_replay", "status", b"status", "step", b"step"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["response", b"response"]) -> typing_extensions.Literal["create_game", "join_game", "restart_game", "start_replay", "leave_game", "quick_save", "quick_load", "quit", "game_info", "observation", "action", "obs_action", "step", "data", "query", "save_replay", "replay_info", "available_maps", "save_map", "map_command", "ping", "debug"] | None: ... + def HasField(self, field_name: typing.Literal["action", b"action", "available_maps", b"available_maps", "create_game", b"create_game", "data", b"data", "debug", b"debug", "game_info", b"game_info", "id", b"id", "join_game", b"join_game", "leave_game", b"leave_game", "map_command", b"map_command", "obs_action", b"obs_action", "observation", b"observation", "ping", b"ping", "query", b"query", "quick_load", b"quick_load", "quick_save", b"quick_save", "quit", b"quit", "replay_info", b"replay_info", "response", b"response", "restart_game", b"restart_game", "save_map", b"save_map", "save_replay", b"save_replay", "start_replay", b"start_replay", "status", b"status", "step", b"step"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["action", b"action", "available_maps", b"available_maps", "create_game", b"create_game", "data", b"data", "debug", b"debug", "error", b"error", "game_info", b"game_info", "id", b"id", "join_game", b"join_game", "leave_game", b"leave_game", "map_command", b"map_command", "obs_action", b"obs_action", "observation", b"observation", "ping", b"ping", "query", b"query", "quick_load", b"quick_load", "quick_save", b"quick_save", "quit", b"quit", "replay_info", b"replay_info", "response", b"response", "restart_game", b"restart_game", "save_map", b"save_map", "save_replay", b"save_replay", "start_replay", b"start_replay", "status", b"status", "step", b"step"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["response", b"response"]) -> typing.Literal["create_game", "join_game", "restart_game", "start_replay", "leave_game", "quick_save", "quick_load", "quit", "game_info", "observation", "action", "obs_action", "step", "data", "query", "save_replay", "replay_info", "available_maps", "save_map", "map_command", "ping", "debug"] | None: ... global___Response = Response -@typing_extensions.final +@typing.final class RequestCreateGame(google.protobuf.message.Message): """----------------------------------------------------------------------------- If successful, puts the game into the status: init_game. @@ -484,18 +509,19 @@ class RequestCreateGame(google.protobuf.message.Message): DISABLE_FOG_FIELD_NUMBER: builtins.int RANDOM_SEED_FIELD_NUMBER: builtins.int REALTIME_FIELD_NUMBER: builtins.int - @property - def local_map(self) -> global___LocalMap: - """Local .SC2Map file""" battlenet_map_name: builtins.str """Map published to BattleNet""" - @property - def player_setup(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___PlayerSetup]: ... disable_fog: builtins.bool random_seed: builtins.int """Sets the pseudo-random seed for the game.""" realtime: builtins.bool """If set, the game plays in real time.""" + @property + def local_map(self) -> global___LocalMap: + """Local .SC2Map file""" + + @property + def player_setup(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___PlayerSetup]: ... def __init__( self, *, @@ -506,13 +532,13 @@ class RequestCreateGame(google.protobuf.message.Message): random_seed: builtins.int | None = ..., realtime: builtins.bool | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["Map", b"Map", "battlenet_map_name", b"battlenet_map_name", "disable_fog", b"disable_fog", "local_map", b"local_map", "random_seed", b"random_seed", "realtime", b"realtime"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["Map", b"Map", "battlenet_map_name", b"battlenet_map_name", "disable_fog", b"disable_fog", "local_map", b"local_map", "player_setup", b"player_setup", "random_seed", b"random_seed", "realtime", b"realtime"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["Map", b"Map"]) -> typing_extensions.Literal["local_map", "battlenet_map_name"] | None: ... + def HasField(self, field_name: typing.Literal["Map", b"Map", "battlenet_map_name", b"battlenet_map_name", "disable_fog", b"disable_fog", "local_map", b"local_map", "random_seed", b"random_seed", "realtime", b"realtime"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["Map", b"Map", "battlenet_map_name", b"battlenet_map_name", "disable_fog", b"disable_fog", "local_map", b"local_map", "player_setup", b"player_setup", "random_seed", b"random_seed", "realtime", b"realtime"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["Map", b"Map"]) -> typing.Literal["local_map", "battlenet_map_name"] | None: ... global___RequestCreateGame = RequestCreateGame -@typing_extensions.final +@typing.final class LocalMap(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -530,12 +556,12 @@ class LocalMap(google.protobuf.message.Message): map_path: builtins.str | None = ..., map_data: builtins.bytes | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["map_data", b"map_data", "map_path", b"map_path"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["map_data", b"map_data", "map_path", b"map_path"]) -> None: ... + def HasField(self, field_name: typing.Literal["map_data", b"map_data", "map_path", b"map_path"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["map_data", b"map_data", "map_path", b"map_path"]) -> None: ... global___LocalMap = LocalMap -@typing_extensions.final +@typing.final class ResponseCreateGame(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -576,12 +602,12 @@ class ResponseCreateGame(google.protobuf.message.Message): error: global___ResponseCreateGame.Error.ValueType | None = ..., error_details: builtins.str | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["error", b"error", "error_details", b"error_details"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["error", b"error", "error_details", b"error_details"]) -> None: ... + def HasField(self, field_name: typing.Literal["error", b"error", "error_details", b"error_details"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["error", b"error", "error_details", b"error_details"]) -> None: ... global___ResponseCreateGame = ResponseCreateGame -@typing_extensions.final +@typing.final class RequestJoinGame(google.protobuf.message.Message): """----------------------------------------------------------------------------- If successful, puts the game into the status: in_game. Will be able to @@ -602,15 +628,6 @@ class RequestJoinGame(google.protobuf.message.Message): """Join as participant""" observed_player_id: builtins.int """Join as observer""" - @property - def options(self) -> global___InterfaceOptions: - """This is limited to what is specified in RequestCreateGame, but you can request less information if you want.""" - @property - def server_ports(self) -> global___PortSet: - """Do not set in the single-player case. This is the port a server will use.""" - @property - def client_ports(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___PortSet]: - """Do not set in the single-player case. These are the ports clients will use to initialize communication.""" shared_port: builtins.int """Currently only a singe client is supported. deprecated @@ -619,6 +636,18 @@ class RequestJoinGame(google.protobuf.message.Message): """Use this to set the player's name to something other than autogenerated name.""" host_ip: builtins.str """Both game creator and joiner should provide the ip address of the game creator in order to play remotely. Defaults to localhost.""" + @property + def options(self) -> global___InterfaceOptions: + """This is limited to what is specified in RequestCreateGame, but you can request less information if you want.""" + + @property + def server_ports(self) -> global___PortSet: + """Do not set in the single-player case. This is the port a server will use.""" + + @property + def client_ports(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___PortSet]: + """Do not set in the single-player case. These are the ports clients will use to initialize communication.""" + def __init__( self, *, @@ -631,13 +660,13 @@ class RequestJoinGame(google.protobuf.message.Message): player_name: builtins.str | None = ..., host_ip: builtins.str | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["host_ip", b"host_ip", "observed_player_id", b"observed_player_id", "options", b"options", "participation", b"participation", "player_name", b"player_name", "race", b"race", "server_ports", b"server_ports", "shared_port", b"shared_port"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["client_ports", b"client_ports", "host_ip", b"host_ip", "observed_player_id", b"observed_player_id", "options", b"options", "participation", b"participation", "player_name", b"player_name", "race", b"race", "server_ports", b"server_ports", "shared_port", b"shared_port"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["participation", b"participation"]) -> typing_extensions.Literal["race", "observed_player_id"] | None: ... + def HasField(self, field_name: typing.Literal["host_ip", b"host_ip", "observed_player_id", b"observed_player_id", "options", b"options", "participation", b"participation", "player_name", b"player_name", "race", b"race", "server_ports", b"server_ports", "shared_port", b"shared_port"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["client_ports", b"client_ports", "host_ip", b"host_ip", "observed_player_id", b"observed_player_id", "options", b"options", "participation", b"participation", "player_name", b"player_name", "race", b"race", "server_ports", b"server_ports", "shared_port", b"shared_port"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["participation", b"participation"]) -> typing.Literal["race", "observed_player_id"] | None: ... global___RequestJoinGame = RequestJoinGame -@typing_extensions.final +@typing.final class PortSet(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -652,12 +681,12 @@ class PortSet(google.protobuf.message.Message): game_port: builtins.int | None = ..., base_port: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["base_port", b"base_port", "game_port", b"game_port"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["base_port", b"base_port", "game_port", b"game_port"]) -> None: ... + def HasField(self, field_name: typing.Literal["base_port", b"base_port", "game_port", b"game_port"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["base_port", b"base_port", "game_port", b"game_port"]) -> None: ... global___PortSet = PortSet -@typing_extensions.final +@typing.final class ResponseJoinGame(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -715,12 +744,12 @@ class ResponseJoinGame(google.protobuf.message.Message): error: global___ResponseJoinGame.Error.ValueType | None = ..., error_details: builtins.str | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["error", b"error", "error_details", b"error_details", "player_id", b"player_id"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["error", b"error", "error_details", b"error_details", "player_id", b"player_id"]) -> None: ... + def HasField(self, field_name: typing.Literal["error", b"error", "error_details", b"error_details", "player_id", b"player_id"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["error", b"error", "error_details", b"error_details", "player_id", b"player_id"]) -> None: ... global___ResponseJoinGame = ResponseJoinGame -@typing_extensions.final +@typing.final class RequestRestartGame(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -732,7 +761,7 @@ class RequestRestartGame(google.protobuf.message.Message): global___RequestRestartGame = RequestRestartGame -@typing_extensions.final +@typing.final class ResponseRestartGame(google.protobuf.message.Message): """The defaultRestartGameLoops is specified to be (1<<18) by default""" @@ -763,12 +792,12 @@ class ResponseRestartGame(google.protobuf.message.Message): error_details: builtins.str | None = ..., need_hard_reset: builtins.bool | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["error", b"error", "error_details", b"error_details", "need_hard_reset", b"need_hard_reset"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["error", b"error", "error_details", b"error_details", "need_hard_reset", b"need_hard_reset"]) -> None: ... + def HasField(self, field_name: typing.Literal["error", b"error", "error_details", b"error_details", "need_hard_reset", b"need_hard_reset"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["error", b"error", "error_details", b"error_details", "need_hard_reset", b"need_hard_reset"]) -> None: ... global___ResponseRestartGame = ResponseRestartGame -@typing_extensions.final +@typing.final class RequestStartReplay(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -787,12 +816,12 @@ class RequestStartReplay(google.protobuf.message.Message): map_data: builtins.bytes """Overrides the map path stored in the replay.""" observed_player_id: builtins.int - @property - def options(self) -> global___InterfaceOptions: ... disable_fog: builtins.bool realtime: builtins.bool record_replay: builtins.bool """Allow RequestSaveReplay from a replay. Useful for truncating a replay, or restoring tracker.events.""" + @property + def options(self) -> global___InterfaceOptions: ... def __init__( self, *, @@ -805,13 +834,13 @@ class RequestStartReplay(google.protobuf.message.Message): realtime: builtins.bool | None = ..., record_replay: builtins.bool | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["disable_fog", b"disable_fog", "map_data", b"map_data", "observed_player_id", b"observed_player_id", "options", b"options", "realtime", b"realtime", "record_replay", b"record_replay", "replay", b"replay", "replay_data", b"replay_data", "replay_path", b"replay_path"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["disable_fog", b"disable_fog", "map_data", b"map_data", "observed_player_id", b"observed_player_id", "options", b"options", "realtime", b"realtime", "record_replay", b"record_replay", "replay", b"replay", "replay_data", b"replay_data", "replay_path", b"replay_path"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["replay", b"replay"]) -> typing_extensions.Literal["replay_path", "replay_data"] | None: ... + def HasField(self, field_name: typing.Literal["disable_fog", b"disable_fog", "map_data", b"map_data", "observed_player_id", b"observed_player_id", "options", b"options", "realtime", b"realtime", "record_replay", b"record_replay", "replay", b"replay", "replay_data", b"replay_data", "replay_path", b"replay_path"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["disable_fog", b"disable_fog", "map_data", b"map_data", "observed_player_id", b"observed_player_id", "options", b"options", "realtime", b"realtime", "record_replay", b"record_replay", "replay", b"replay", "replay_data", b"replay_data", "replay_path", b"replay_path"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["replay", b"replay"]) -> typing.Literal["replay_path", "replay_data"] | None: ... global___RequestStartReplay = RequestStartReplay -@typing_extensions.final +@typing.final class ResponseStartReplay(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -848,12 +877,12 @@ class ResponseStartReplay(google.protobuf.message.Message): error: global___ResponseStartReplay.Error.ValueType | None = ..., error_details: builtins.str | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["error", b"error", "error_details", b"error_details"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["error", b"error", "error_details", b"error_details"]) -> None: ... + def HasField(self, field_name: typing.Literal["error", b"error", "error_details", b"error_details"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["error", b"error", "error_details", b"error_details"]) -> None: ... global___ResponseStartReplay = ResponseStartReplay -@typing_extensions.final +@typing.final class RequestMapCommand(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -866,12 +895,12 @@ class RequestMapCommand(google.protobuf.message.Message): *, trigger_cmd: builtins.str | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["trigger_cmd", b"trigger_cmd"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["trigger_cmd", b"trigger_cmd"]) -> None: ... + def HasField(self, field_name: typing.Literal["trigger_cmd", b"trigger_cmd"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["trigger_cmd", b"trigger_cmd"]) -> None: ... global___RequestMapCommand = RequestMapCommand -@typing_extensions.final +@typing.final class ResponseMapCommand(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -896,12 +925,12 @@ class ResponseMapCommand(google.protobuf.message.Message): error: global___ResponseMapCommand.Error.ValueType | None = ..., error_details: builtins.str | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["error", b"error", "error_details", b"error_details"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["error", b"error", "error_details", b"error_details"]) -> None: ... + def HasField(self, field_name: typing.Literal["error", b"error", "error_details", b"error_details"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["error", b"error", "error_details", b"error_details"]) -> None: ... global___ResponseMapCommand = ResponseMapCommand -@typing_extensions.final +@typing.final class RequestLeaveGame(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -913,7 +942,7 @@ class RequestLeaveGame(google.protobuf.message.Message): global___RequestLeaveGame = RequestLeaveGame -@typing_extensions.final +@typing.final class ResponseLeaveGame(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -923,7 +952,7 @@ class ResponseLeaveGame(google.protobuf.message.Message): global___ResponseLeaveGame = ResponseLeaveGame -@typing_extensions.final +@typing.final class RequestQuickSave(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -935,7 +964,7 @@ class RequestQuickSave(google.protobuf.message.Message): global___RequestQuickSave = RequestQuickSave -@typing_extensions.final +@typing.final class ResponseQuickSave(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -947,7 +976,7 @@ class ResponseQuickSave(google.protobuf.message.Message): global___ResponseQuickSave = ResponseQuickSave -@typing_extensions.final +@typing.final class RequestQuickLoad(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -959,7 +988,7 @@ class RequestQuickLoad(google.protobuf.message.Message): global___RequestQuickLoad = RequestQuickLoad -@typing_extensions.final +@typing.final class ResponseQuickLoad(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -971,7 +1000,7 @@ class ResponseQuickLoad(google.protobuf.message.Message): global___ResponseQuickLoad = ResponseQuickLoad -@typing_extensions.final +@typing.final class RequestQuit(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -983,7 +1012,7 @@ class RequestQuit(google.protobuf.message.Message): global___RequestQuit = RequestQuit -@typing_extensions.final +@typing.final class ResponseQuit(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -993,7 +1022,7 @@ class ResponseQuit(google.protobuf.message.Message): global___ResponseQuit = ResponseQuit -@typing_extensions.final +@typing.final class RequestGameInfo(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -1005,7 +1034,7 @@ class RequestGameInfo(google.protobuf.message.Message): global___RequestGameInfo = RequestGameInfo -@typing_extensions.final +@typing.final class ResponseGameInfo(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1016,14 +1045,15 @@ class ResponseGameInfo(google.protobuf.message.Message): START_RAW_FIELD_NUMBER: builtins.int OPTIONS_FIELD_NUMBER: builtins.int map_name: builtins.str + local_map_path: builtins.str @property def mod_names(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ... - local_map_path: builtins.str @property def player_info(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___PlayerInfo]: ... @property def start_raw(self) -> s2clientprotocol.raw_pb2.StartRaw: """Populated if Raw interface is enabled.""" + @property def options(self) -> global___InterfaceOptions: ... def __init__( @@ -1036,12 +1066,12 @@ class ResponseGameInfo(google.protobuf.message.Message): start_raw: s2clientprotocol.raw_pb2.StartRaw | None = ..., options: global___InterfaceOptions | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["local_map_path", b"local_map_path", "map_name", b"map_name", "options", b"options", "start_raw", b"start_raw"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["local_map_path", b"local_map_path", "map_name", b"map_name", "mod_names", b"mod_names", "options", b"options", "player_info", b"player_info", "start_raw", b"start_raw"]) -> None: ... + def HasField(self, field_name: typing.Literal["local_map_path", b"local_map_path", "map_name", b"map_name", "options", b"options", "start_raw", b"start_raw"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["local_map_path", b"local_map_path", "map_name", b"map_name", "mod_names", b"mod_names", "options", b"options", "player_info", b"player_info", "start_raw", b"start_raw"]) -> None: ... global___ResponseGameInfo = ResponseGameInfo -@typing_extensions.final +@typing.final class RequestObservation(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -1058,12 +1088,12 @@ class RequestObservation(google.protobuf.message.Message): disable_fog: builtins.bool | None = ..., game_loop: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["disable_fog", b"disable_fog", "game_loop", b"game_loop"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["disable_fog", b"disable_fog", "game_loop", b"game_loop"]) -> None: ... + def HasField(self, field_name: typing.Literal["disable_fog", b"disable_fog", "game_loop", b"game_loop"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["disable_fog", b"disable_fog", "game_loop", b"game_loop"]) -> None: ... global___RequestObservation = RequestObservation -@typing_extensions.final +@typing.final class ResponseObservation(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1075,14 +1105,17 @@ class ResponseObservation(google.protobuf.message.Message): @property def actions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Action]: """Actions this player did since the last Observation.""" + @property def action_errors(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ActionError]: """Equivalent of UI "red text" errors.""" + @property def observation(self) -> global___Observation: ... @property def player_result(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___PlayerResult]: """Only populated if the game ended during this step.""" + @property def chat(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ChatReceived]: ... def __init__( @@ -1094,12 +1127,12 @@ class ResponseObservation(google.protobuf.message.Message): player_result: collections.abc.Iterable[global___PlayerResult] | None = ..., chat: collections.abc.Iterable[global___ChatReceived] | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["observation", b"observation"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["action_errors", b"action_errors", "actions", b"actions", "chat", b"chat", "observation", b"observation", "player_result", b"player_result"]) -> None: ... + def HasField(self, field_name: typing.Literal["observation", b"observation"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["action_errors", b"action_errors", "actions", b"actions", "chat", b"chat", "observation", b"observation", "player_result", b"player_result"]) -> None: ... global___ResponseObservation = ResponseObservation -@typing_extensions.final +@typing.final class ChatReceived(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1113,12 +1146,12 @@ class ChatReceived(google.protobuf.message.Message): player_id: builtins.int | None = ..., message: builtins.str | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["message", b"message", "player_id", b"player_id"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["message", b"message", "player_id", b"player_id"]) -> None: ... + def HasField(self, field_name: typing.Literal["message", b"message", "player_id", b"player_id"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["message", b"message", "player_id", b"player_id"]) -> None: ... global___ChatReceived = ChatReceived -@typing_extensions.final +@typing.final class RequestAction(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -1132,11 +1165,11 @@ class RequestAction(google.protobuf.message.Message): *, actions: collections.abc.Iterable[global___Action] | None = ..., ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["actions", b"actions"]) -> None: ... + def ClearField(self, field_name: typing.Literal["actions", b"actions"]) -> None: ... global___RequestAction = RequestAction -@typing_extensions.final +@typing.final class ResponseAction(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1148,11 +1181,11 @@ class ResponseAction(google.protobuf.message.Message): *, result: collections.abc.Iterable[s2clientprotocol.error_pb2.ActionResult.ValueType] | None = ..., ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["result", b"result"]) -> None: ... + def ClearField(self, field_name: typing.Literal["result", b"result"]) -> None: ... global___ResponseAction = ResponseAction -@typing_extensions.final +@typing.final class RequestObserverAction(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -1166,11 +1199,11 @@ class RequestObserverAction(google.protobuf.message.Message): *, actions: collections.abc.Iterable[global___ObserverAction] | None = ..., ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["actions", b"actions"]) -> None: ... + def ClearField(self, field_name: typing.Literal["actions", b"actions"]) -> None: ... global___RequestObserverAction = RequestObserverAction -@typing_extensions.final +@typing.final class ResponseObserverAction(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1180,7 +1213,7 @@ class ResponseObserverAction(google.protobuf.message.Message): global___ResponseObserverAction = ResponseObserverAction -@typing_extensions.final +@typing.final class RequestStep(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -1194,12 +1227,12 @@ class RequestStep(google.protobuf.message.Message): *, count: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["count", b"count"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["count", b"count"]) -> None: ... + def HasField(self, field_name: typing.Literal["count", b"count"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["count", b"count"]) -> None: ... global___RequestStep = RequestStep -@typing_extensions.final +@typing.final class ResponseStep(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1215,12 +1248,12 @@ class ResponseStep(google.protobuf.message.Message): *, simulation_loop: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["simulation_loop", b"simulation_loop"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["simulation_loop", b"simulation_loop"]) -> None: ... + def HasField(self, field_name: typing.Literal["simulation_loop", b"simulation_loop"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["simulation_loop", b"simulation_loop"]) -> None: ... global___ResponseStep = ResponseStep -@typing_extensions.final +@typing.final class RequestData(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -1245,12 +1278,12 @@ class RequestData(google.protobuf.message.Message): buff_id: builtins.bool | None = ..., effect_id: builtins.bool | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "buff_id", b"buff_id", "effect_id", b"effect_id", "unit_type_id", b"unit_type_id", "upgrade_id", b"upgrade_id"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "buff_id", b"buff_id", "effect_id", b"effect_id", "unit_type_id", b"unit_type_id", "upgrade_id", b"upgrade_id"]) -> None: ... + def HasField(self, field_name: typing.Literal["ability_id", b"ability_id", "buff_id", b"buff_id", "effect_id", b"effect_id", "unit_type_id", b"unit_type_id", "upgrade_id", b"upgrade_id"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["ability_id", b"ability_id", "buff_id", b"buff_id", "effect_id", b"effect_id", "unit_type_id", b"unit_type_id", "upgrade_id", b"upgrade_id"]) -> None: ... global___RequestData = RequestData -@typing_extensions.final +@typing.final class ResponseData(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1278,11 +1311,11 @@ class ResponseData(google.protobuf.message.Message): buffs: collections.abc.Iterable[s2clientprotocol.data_pb2.BuffData] | None = ..., effects: collections.abc.Iterable[s2clientprotocol.data_pb2.EffectData] | None = ..., ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["abilities", b"abilities", "buffs", b"buffs", "effects", b"effects", "units", b"units", "upgrades", b"upgrades"]) -> None: ... + def ClearField(self, field_name: typing.Literal["abilities", b"abilities", "buffs", b"buffs", "effects", b"effects", "units", b"units", "upgrades", b"upgrades"]) -> None: ... global___ResponseData = ResponseData -@typing_extensions.final +@typing.final class RequestSaveReplay(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -1294,7 +1327,7 @@ class RequestSaveReplay(google.protobuf.message.Message): global___RequestSaveReplay = RequestSaveReplay -@typing_extensions.final +@typing.final class ResponseSaveReplay(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1305,12 +1338,12 @@ class ResponseSaveReplay(google.protobuf.message.Message): *, data: builtins.bytes | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["data", b"data"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["data", b"data"]) -> None: ... + def HasField(self, field_name: typing.Literal["data", b"data"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["data", b"data"]) -> None: ... global___ResponseSaveReplay = ResponseSaveReplay -@typing_extensions.final +@typing.final class RequestReplayInfo(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -1331,13 +1364,13 @@ class RequestReplayInfo(google.protobuf.message.Message): replay_data: builtins.bytes | None = ..., download_data: builtins.bool | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["download_data", b"download_data", "replay", b"replay", "replay_data", b"replay_data", "replay_path", b"replay_path"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["download_data", b"download_data", "replay", b"replay", "replay_data", b"replay_data", "replay_path", b"replay_path"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["replay", b"replay"]) -> typing_extensions.Literal["replay_path", "replay_data"] | None: ... + def HasField(self, field_name: typing.Literal["download_data", b"download_data", "replay", b"replay", "replay_data", b"replay_data", "replay_path", b"replay_path"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["download_data", b"download_data", "replay", b"replay", "replay_data", b"replay_data", "replay_path", b"replay_path"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["replay", b"replay"]) -> typing.Literal["replay_path", "replay_data"] | None: ... global___RequestReplayInfo = RequestReplayInfo -@typing_extensions.final +@typing.final class PlayerInfoExtra(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1345,12 +1378,12 @@ class PlayerInfoExtra(google.protobuf.message.Message): PLAYER_RESULT_FIELD_NUMBER: builtins.int PLAYER_MMR_FIELD_NUMBER: builtins.int PLAYER_APM_FIELD_NUMBER: builtins.int + player_mmr: builtins.int + player_apm: builtins.int @property def player_info(self) -> global___PlayerInfo: ... @property def player_result(self) -> global___PlayerResult: ... - player_mmr: builtins.int - player_apm: builtins.int def __init__( self, *, @@ -1359,12 +1392,12 @@ class PlayerInfoExtra(google.protobuf.message.Message): player_mmr: builtins.int | None = ..., player_apm: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["player_apm", b"player_apm", "player_info", b"player_info", "player_mmr", b"player_mmr", "player_result", b"player_result"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["player_apm", b"player_apm", "player_info", b"player_info", "player_mmr", b"player_mmr", "player_result", b"player_result"]) -> None: ... + def HasField(self, field_name: typing.Literal["player_apm", b"player_apm", "player_info", b"player_info", "player_mmr", b"player_mmr", "player_result", b"player_result"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["player_apm", b"player_apm", "player_info", b"player_info", "player_mmr", b"player_mmr", "player_result", b"player_result"]) -> None: ... global___PlayerInfoExtra = PlayerInfoExtra -@typing_extensions.final +@typing.final class ResponseReplayInfo(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1400,8 +1433,6 @@ class ResponseReplayInfo(google.protobuf.message.Message): ERROR_DETAILS_FIELD_NUMBER: builtins.int map_name: builtins.str local_map_path: builtins.str - @property - def player_info(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___PlayerInfoExtra]: ... game_duration_loops: builtins.int game_duration_seconds: builtins.float game_version: builtins.str @@ -1410,6 +1441,8 @@ class ResponseReplayInfo(google.protobuf.message.Message): base_build: builtins.int error: global___ResponseReplayInfo.Error.ValueType error_details: builtins.str + @property + def player_info(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___PlayerInfoExtra]: ... def __init__( self, *, @@ -1425,12 +1458,12 @@ class ResponseReplayInfo(google.protobuf.message.Message): error: global___ResponseReplayInfo.Error.ValueType | None = ..., error_details: builtins.str | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["base_build", b"base_build", "data_build", b"data_build", "data_version", b"data_version", "error", b"error", "error_details", b"error_details", "game_duration_loops", b"game_duration_loops", "game_duration_seconds", b"game_duration_seconds", "game_version", b"game_version", "local_map_path", b"local_map_path", "map_name", b"map_name"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["base_build", b"base_build", "data_build", b"data_build", "data_version", b"data_version", "error", b"error", "error_details", b"error_details", "game_duration_loops", b"game_duration_loops", "game_duration_seconds", b"game_duration_seconds", "game_version", b"game_version", "local_map_path", b"local_map_path", "map_name", b"map_name", "player_info", b"player_info"]) -> None: ... + def HasField(self, field_name: typing.Literal["base_build", b"base_build", "data_build", b"data_build", "data_version", b"data_version", "error", b"error", "error_details", b"error_details", "game_duration_loops", b"game_duration_loops", "game_duration_seconds", b"game_duration_seconds", "game_version", b"game_version", "local_map_path", b"local_map_path", "map_name", b"map_name"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["base_build", b"base_build", "data_build", b"data_build", "data_version", b"data_version", "error", b"error", "error_details", b"error_details", "game_duration_loops", b"game_duration_loops", "game_duration_seconds", b"game_duration_seconds", "game_version", b"game_version", "local_map_path", b"local_map_path", "map_name", b"map_name", "player_info", b"player_info"]) -> None: ... global___ResponseReplayInfo = ResponseReplayInfo -@typing_extensions.final +@typing.final class RequestAvailableMaps(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -1442,7 +1475,7 @@ class RequestAvailableMaps(google.protobuf.message.Message): global___RequestAvailableMaps = RequestAvailableMaps -@typing_extensions.final +@typing.final class ResponseAvailableMaps(google.protobuf.message.Message): """This will only contain locally cached BattleNet maps. To download all ladder maps, log in and queue into a ladder match. @@ -1456,20 +1489,22 @@ class ResponseAvailableMaps(google.protobuf.message.Message): @property def local_map_paths(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: """All the maps in the "Maps/" directory.""" + @property def battlenet_map_names(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: """All the maps in the BattleNet cache.""" + def __init__( self, *, local_map_paths: collections.abc.Iterable[builtins.str] | None = ..., battlenet_map_names: collections.abc.Iterable[builtins.str] | None = ..., ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["battlenet_map_names", b"battlenet_map_names", "local_map_paths", b"local_map_paths"]) -> None: ... + def ClearField(self, field_name: typing.Literal["battlenet_map_names", b"battlenet_map_names", "local_map_paths", b"local_map_paths"]) -> None: ... global___ResponseAvailableMaps = ResponseAvailableMaps -@typing_extensions.final +@typing.final class RequestSaveMap(google.protobuf.message.Message): """----------------------------------------------------------------------------- Copies map data into the path specified. @@ -1489,12 +1524,12 @@ class RequestSaveMap(google.protobuf.message.Message): map_path: builtins.str | None = ..., map_data: builtins.bytes | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["map_data", b"map_data", "map_path", b"map_path"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["map_data", b"map_data", "map_path", b"map_path"]) -> None: ... + def HasField(self, field_name: typing.Literal["map_data", b"map_data", "map_path", b"map_path"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["map_data", b"map_data", "map_path", b"map_path"]) -> None: ... global___RequestSaveMap = RequestSaveMap -@typing_extensions.final +@typing.final class ResponseSaveMap(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1516,12 +1551,12 @@ class ResponseSaveMap(google.protobuf.message.Message): *, error: global___ResponseSaveMap.Error.ValueType | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["error", b"error"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["error", b"error"]) -> None: ... + def HasField(self, field_name: typing.Literal["error", b"error"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["error", b"error"]) -> None: ... global___ResponseSaveMap = ResponseSaveMap -@typing_extensions.final +@typing.final class RequestPing(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -1533,7 +1568,7 @@ class RequestPing(google.protobuf.message.Message): global___RequestPing = RequestPing -@typing_extensions.final +@typing.final class ResponsePing(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1553,12 +1588,12 @@ class ResponsePing(google.protobuf.message.Message): data_build: builtins.int | None = ..., base_build: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["base_build", b"base_build", "data_build", b"data_build", "data_version", b"data_version", "game_version", b"game_version"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["base_build", b"base_build", "data_build", b"data_build", "data_version", b"data_version", "game_version", b"game_version"]) -> None: ... + def HasField(self, field_name: typing.Literal["base_build", b"base_build", "data_build", b"data_build", "data_version", b"data_version", "game_version", b"game_version"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["base_build", b"base_build", "data_build", b"data_build", "data_version", b"data_version", "game_version", b"game_version"]) -> None: ... global___ResponsePing = ResponsePing -@typing_extensions.final +@typing.final class RequestDebug(google.protobuf.message.Message): """-----------------------------------------------------------------------------""" @@ -1572,11 +1607,11 @@ class RequestDebug(google.protobuf.message.Message): *, debug: collections.abc.Iterable[s2clientprotocol.debug_pb2.DebugCommand] | None = ..., ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["debug", b"debug"]) -> None: ... + def ClearField(self, field_name: typing.Literal["debug", b"debug"]) -> None: ... global___RequestDebug = RequestDebug -@typing_extensions.final +@typing.final class ResponseDebug(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1586,7 +1621,7 @@ class ResponseDebug(google.protobuf.message.Message): global___ResponseDebug = ResponseDebug -@typing_extensions.final +@typing.final class PlayerSetup(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1610,12 +1645,12 @@ class PlayerSetup(google.protobuf.message.Message): player_name: builtins.str | None = ..., ai_build: global___AIBuild.ValueType | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["ai_build", b"ai_build", "difficulty", b"difficulty", "player_name", b"player_name", "race", b"race", "type", b"type"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["ai_build", b"ai_build", "difficulty", b"difficulty", "player_name", b"player_name", "race", b"race", "type", b"type"]) -> None: ... + def HasField(self, field_name: typing.Literal["ai_build", b"ai_build", "difficulty", b"difficulty", "player_name", b"player_name", "race", b"race", "type", b"type"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["ai_build", b"ai_build", "difficulty", b"difficulty", "player_name", b"player_name", "race", b"race", "type", b"type"]) -> None: ... global___PlayerSetup = PlayerSetup -@typing_extensions.final +@typing.final class SpatialCameraSetup(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1624,10 +1659,6 @@ class SpatialCameraSetup(google.protobuf.message.Message): WIDTH_FIELD_NUMBER: builtins.int CROP_TO_PLAYABLE_AREA_FIELD_NUMBER: builtins.int ALLOW_CHEATING_LAYERS_FIELD_NUMBER: builtins.int - @property - def resolution(self) -> s2clientprotocol.common_pb2.Size2DI: ... - @property - def minimap_resolution(self) -> s2clientprotocol.common_pb2.Size2DI: ... width: builtins.float """Below are only relevant for feature layers. Set the screen camera width in world units. @@ -1636,6 +1667,10 @@ class SpatialCameraSetup(google.protobuf.message.Message): """Crop minimap to the playable area.""" allow_cheating_layers: builtins.bool """Return unit_type on the minimap, and potentially other cheating layers.""" + @property + def resolution(self) -> s2clientprotocol.common_pb2.Size2DI: ... + @property + def minimap_resolution(self) -> s2clientprotocol.common_pb2.Size2DI: ... def __init__( self, *, @@ -1645,12 +1680,12 @@ class SpatialCameraSetup(google.protobuf.message.Message): crop_to_playable_area: builtins.bool | None = ..., allow_cheating_layers: builtins.bool | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["allow_cheating_layers", b"allow_cheating_layers", "crop_to_playable_area", b"crop_to_playable_area", "minimap_resolution", b"minimap_resolution", "resolution", b"resolution", "width", b"width"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["allow_cheating_layers", b"allow_cheating_layers", "crop_to_playable_area", b"crop_to_playable_area", "minimap_resolution", b"minimap_resolution", "resolution", b"resolution", "width", b"width"]) -> None: ... + def HasField(self, field_name: typing.Literal["allow_cheating_layers", b"allow_cheating_layers", "crop_to_playable_area", b"crop_to_playable_area", "minimap_resolution", b"minimap_resolution", "resolution", b"resolution", "width", b"width"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["allow_cheating_layers", b"allow_cheating_layers", "crop_to_playable_area", b"crop_to_playable_area", "minimap_resolution", b"minimap_resolution", "resolution", b"resolution", "width", b"width"]) -> None: ... global___SpatialCameraSetup = SpatialCameraSetup -@typing_extensions.final +@typing.final class InterfaceOptions(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1666,12 +1701,6 @@ class InterfaceOptions(google.protobuf.message.Message): raw: builtins.bool """Interface options""" score: builtins.bool - @property - def feature_layer(self) -> global___SpatialCameraSetup: - """Omit to disable.""" - @property - def render(self) -> global___SpatialCameraSetup: - """Omit to disable.""" show_cloaked: builtins.bool """By default cloaked units are completely hidden. This shows some details.""" show_burrowed_shadows: builtins.bool @@ -1689,6 +1718,14 @@ class InterfaceOptions(google.protobuf.message.Message): """Changes the coordinates in raw.proto to be relative to the playable area. The map_size and playable_area will be the diagonal of the real playable area. """ + @property + def feature_layer(self) -> global___SpatialCameraSetup: + """Omit to disable.""" + + @property + def render(self) -> global___SpatialCameraSetup: + """Omit to disable.""" + def __init__( self, *, @@ -1702,12 +1739,12 @@ class InterfaceOptions(google.protobuf.message.Message): raw_affects_selection: builtins.bool | None = ..., raw_crop_to_playable_area: builtins.bool | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["feature_layer", b"feature_layer", "raw", b"raw", "raw_affects_selection", b"raw_affects_selection", "raw_crop_to_playable_area", b"raw_crop_to_playable_area", "render", b"render", "score", b"score", "show_burrowed_shadows", b"show_burrowed_shadows", "show_cloaked", b"show_cloaked", "show_placeholders", b"show_placeholders"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["feature_layer", b"feature_layer", "raw", b"raw", "raw_affects_selection", b"raw_affects_selection", "raw_crop_to_playable_area", b"raw_crop_to_playable_area", "render", b"render", "score", b"score", "show_burrowed_shadows", b"show_burrowed_shadows", "show_cloaked", b"show_cloaked", "show_placeholders", b"show_placeholders"]) -> None: ... + def HasField(self, field_name: typing.Literal["feature_layer", b"feature_layer", "raw", b"raw", "raw_affects_selection", b"raw_affects_selection", "raw_crop_to_playable_area", b"raw_crop_to_playable_area", "render", b"render", "score", b"score", "show_burrowed_shadows", b"show_burrowed_shadows", "show_cloaked", b"show_cloaked", "show_placeholders", b"show_placeholders"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["feature_layer", b"feature_layer", "raw", b"raw", "raw_affects_selection", b"raw_affects_selection", "raw_crop_to_playable_area", b"raw_crop_to_playable_area", "render", b"render", "score", b"score", "show_burrowed_shadows", b"show_burrowed_shadows", "show_cloaked", b"show_cloaked", "show_placeholders", b"show_placeholders"]) -> None: ... global___InterfaceOptions = InterfaceOptions -@typing_extensions.final +@typing.final class PlayerInfo(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1740,12 +1777,12 @@ class PlayerInfo(google.protobuf.message.Message): ai_build: global___AIBuild.ValueType | None = ..., player_name: builtins.str | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["ai_build", b"ai_build", "difficulty", b"difficulty", "player_id", b"player_id", "player_name", b"player_name", "race_actual", b"race_actual", "race_requested", b"race_requested", "type", b"type"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["ai_build", b"ai_build", "difficulty", b"difficulty", "player_id", b"player_id", "player_name", b"player_name", "race_actual", b"race_actual", "race_requested", b"race_requested", "type", b"type"]) -> None: ... + def HasField(self, field_name: typing.Literal["ai_build", b"ai_build", "difficulty", b"difficulty", "player_id", b"player_id", "player_name", b"player_name", "race_actual", b"race_actual", "race_requested", b"race_requested", "type", b"type"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["ai_build", b"ai_build", "difficulty", b"difficulty", "player_id", b"player_id", "player_name", b"player_name", "race_actual", b"race_actual", "race_requested", b"race_requested", "type", b"type"]) -> None: ... global___PlayerInfo = PlayerInfo -@typing_extensions.final +@typing.final class PlayerCommon(google.protobuf.message.Message): """ During Game @@ -1790,12 +1827,12 @@ class PlayerCommon(google.protobuf.message.Message): warp_gate_count: builtins.int | None = ..., larva_count: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["army_count", b"army_count", "food_army", b"food_army", "food_cap", b"food_cap", "food_used", b"food_used", "food_workers", b"food_workers", "idle_worker_count", b"idle_worker_count", "larva_count", b"larva_count", "minerals", b"minerals", "player_id", b"player_id", "vespene", b"vespene", "warp_gate_count", b"warp_gate_count"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["army_count", b"army_count", "food_army", b"food_army", "food_cap", b"food_cap", "food_used", b"food_used", "food_workers", b"food_workers", "idle_worker_count", b"idle_worker_count", "larva_count", b"larva_count", "minerals", b"minerals", "player_id", b"player_id", "vespene", b"vespene", "warp_gate_count", b"warp_gate_count"]) -> None: ... + def HasField(self, field_name: typing.Literal["army_count", b"army_count", "food_army", b"food_army", "food_cap", b"food_cap", "food_used", b"food_used", "food_workers", b"food_workers", "idle_worker_count", b"idle_worker_count", "larva_count", b"larva_count", "minerals", b"minerals", "player_id", b"player_id", "vespene", b"vespene", "warp_gate_count", b"warp_gate_count"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["army_count", b"army_count", "food_army", b"food_army", "food_cap", b"food_cap", "food_used", b"food_used", "food_workers", b"food_workers", "idle_worker_count", b"idle_worker_count", "larva_count", b"larva_count", "minerals", b"minerals", "player_id", b"player_id", "vespene", b"vespene", "warp_gate_count", b"warp_gate_count"]) -> None: ... global___PlayerCommon = PlayerCommon -@typing_extensions.final +@typing.final class Observation(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1816,20 +1853,25 @@ class Observation(google.protobuf.message.Message): @property def abilities(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[s2clientprotocol.common_pb2.AvailableAbility]: """Abilities available in the selection. Enabled if in this list, disabled otherwise.""" + @property def score(self) -> s2clientprotocol.score_pb2.Score: ... @property def raw_data(self) -> s2clientprotocol.raw_pb2.ObservationRaw: """Populated if Raw interface is enabled.""" + @property def feature_layer_data(self) -> s2clientprotocol.spatial_pb2.ObservationFeatureLayer: """Populated if Feature Layer interface is enabled.""" + @property def render_data(self) -> s2clientprotocol.spatial_pb2.ObservationRender: """Populated if Render interface is enabled.""" + @property def ui_data(self) -> s2clientprotocol.ui_pb2.ObservationUI: """Populated if Feature Layer or Render interface is enabled.""" + def __init__( self, *, @@ -1843,12 +1885,12 @@ class Observation(google.protobuf.message.Message): render_data: s2clientprotocol.spatial_pb2.ObservationRender | None = ..., ui_data: s2clientprotocol.ui_pb2.ObservationUI | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["feature_layer_data", b"feature_layer_data", "game_loop", b"game_loop", "player_common", b"player_common", "raw_data", b"raw_data", "render_data", b"render_data", "score", b"score", "ui_data", b"ui_data"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["abilities", b"abilities", "alerts", b"alerts", "feature_layer_data", b"feature_layer_data", "game_loop", b"game_loop", "player_common", b"player_common", "raw_data", b"raw_data", "render_data", b"render_data", "score", b"score", "ui_data", b"ui_data"]) -> None: ... + def HasField(self, field_name: typing.Literal["feature_layer_data", b"feature_layer_data", "game_loop", b"game_loop", "player_common", b"player_common", "raw_data", b"raw_data", "render_data", b"render_data", "score", b"score", "ui_data", b"ui_data"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["abilities", b"abilities", "alerts", b"alerts", "feature_layer_data", b"feature_layer_data", "game_loop", b"game_loop", "player_common", b"player_common", "raw_data", b"raw_data", "render_data", b"render_data", "score", b"score", "ui_data", b"ui_data"]) -> None: ... global___Observation = Observation -@typing_extensions.final +@typing.final class Action(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1858,23 +1900,28 @@ class Action(google.protobuf.message.Message): ACTION_UI_FIELD_NUMBER: builtins.int ACTION_CHAT_FIELD_NUMBER: builtins.int GAME_LOOP_FIELD_NUMBER: builtins.int + game_loop: builtins.int + """Populated for actions in ResponseObservation. The game loop on which the action was executed.""" @property def action_raw(self) -> s2clientprotocol.raw_pb2.ActionRaw: """Populated if Raw interface is enabled.""" + @property def action_feature_layer(self) -> s2clientprotocol.spatial_pb2.ActionSpatial: """Populated if Feature Layer interface is enabled.""" + @property def action_render(self) -> s2clientprotocol.spatial_pb2.ActionSpatial: """Not implemented. Populated if Render interface is enabled.""" + @property def action_ui(self) -> s2clientprotocol.ui_pb2.ActionUI: """Populated if Feature Layer or Render interface is enabled.""" + @property def action_chat(self) -> global___ActionChat: """Chat messages as a player typing into the chat channel.""" - game_loop: builtins.int - """Populated for actions in ResponseObservation. The game loop on which the action was executed.""" + def __init__( self, *, @@ -1885,12 +1932,12 @@ class Action(google.protobuf.message.Message): action_chat: global___ActionChat | None = ..., game_loop: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["action_chat", b"action_chat", "action_feature_layer", b"action_feature_layer", "action_raw", b"action_raw", "action_render", b"action_render", "action_ui", b"action_ui", "game_loop", b"game_loop"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["action_chat", b"action_chat", "action_feature_layer", b"action_feature_layer", "action_raw", b"action_raw", "action_render", b"action_render", "action_ui", b"action_ui", "game_loop", b"game_loop"]) -> None: ... + def HasField(self, field_name: typing.Literal["action_chat", b"action_chat", "action_feature_layer", b"action_feature_layer", "action_raw", b"action_raw", "action_render", b"action_render", "action_ui", b"action_ui", "game_loop", b"game_loop"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["action_chat", b"action_chat", "action_feature_layer", b"action_feature_layer", "action_raw", b"action_raw", "action_render", b"action_render", "action_ui", b"action_ui", "game_loop", b"game_loop"]) -> None: ... global___Action = Action -@typing_extensions.final +@typing.final class ActionChat(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1917,12 +1964,12 @@ class ActionChat(google.protobuf.message.Message): channel: global___ActionChat.Channel.ValueType | None = ..., message: builtins.str | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["channel", b"channel", "message", b"message"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["channel", b"channel", "message", b"message"]) -> None: ... + def HasField(self, field_name: typing.Literal["channel", b"channel", "message", b"message"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["channel", b"channel", "message", b"message"]) -> None: ... global___ActionChat = ActionChat -@typing_extensions.final +@typing.final class ActionError(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1940,12 +1987,12 @@ class ActionError(google.protobuf.message.Message): ability_id: builtins.int | None = ..., result: s2clientprotocol.error_pb2.ActionResult.ValueType | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "result", b"result", "unit_tag", b"unit_tag"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "result", b"result", "unit_tag", b"unit_tag"]) -> None: ... + def HasField(self, field_name: typing.Literal["ability_id", b"ability_id", "result", b"result", "unit_tag", b"unit_tag"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["ability_id", b"ability_id", "result", b"result", "unit_tag", b"unit_tag"]) -> None: ... global___ActionError = ActionError -@typing_extensions.final +@typing.final class ObserverAction(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1956,6 +2003,7 @@ class ObserverAction(google.protobuf.message.Message): @property def player_perspective(self) -> global___ActionObserverPlayerPerspective: """Not implemented""" + @property def camera_move(self) -> global___ActionObserverCameraMove: ... @property @@ -1963,6 +2011,7 @@ class ObserverAction(google.protobuf.message.Message): @property def camera_follow_units(self) -> global___ActionObserverCameraFollowUnits: """Not implemented""" + def __init__( self, *, @@ -1971,13 +2020,13 @@ class ObserverAction(google.protobuf.message.Message): camera_follow_player: global___ActionObserverCameraFollowPlayer | None = ..., camera_follow_units: global___ActionObserverCameraFollowUnits | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["action", b"action", "camera_follow_player", b"camera_follow_player", "camera_follow_units", b"camera_follow_units", "camera_move", b"camera_move", "player_perspective", b"player_perspective"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["action", b"action", "camera_follow_player", b"camera_follow_player", "camera_follow_units", b"camera_follow_units", "camera_move", b"camera_move", "player_perspective", b"player_perspective"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["action", b"action"]) -> typing_extensions.Literal["player_perspective", "camera_move", "camera_follow_player", "camera_follow_units"] | None: ... + def HasField(self, field_name: typing.Literal["action", b"action", "camera_follow_player", b"camera_follow_player", "camera_follow_units", b"camera_follow_units", "camera_move", b"camera_move", "player_perspective", b"player_perspective"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["action", b"action", "camera_follow_player", b"camera_follow_player", "camera_follow_units", b"camera_follow_units", "camera_move", b"camera_move", "player_perspective", b"player_perspective"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["action", b"action"]) -> typing.Literal["player_perspective", "camera_move", "camera_follow_player", "camera_follow_units"] | None: ... global___ObserverAction = ObserverAction -@typing_extensions.final +@typing.final class ActionObserverPlayerPerspective(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -1989,35 +2038,35 @@ class ActionObserverPlayerPerspective(google.protobuf.message.Message): *, player_id: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["player_id", b"player_id"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["player_id", b"player_id"]) -> None: ... + def HasField(self, field_name: typing.Literal["player_id", b"player_id"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["player_id", b"player_id"]) -> None: ... global___ActionObserverPlayerPerspective = ActionObserverPlayerPerspective -@typing_extensions.final +@typing.final class ActionObserverCameraMove(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor WORLD_POS_FIELD_NUMBER: builtins.int DISTANCE_FIELD_NUMBER: builtins.int - @property - def world_pos(self) -> s2clientprotocol.common_pb2.Point2D: ... distance: builtins.float """Distance between camera and terrain. Larger value zooms out camera. Defaults to standard camera distance if set to 0. """ + @property + def world_pos(self) -> s2clientprotocol.common_pb2.Point2D: ... def __init__( self, *, world_pos: s2clientprotocol.common_pb2.Point2D | None = ..., distance: builtins.float | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["distance", b"distance", "world_pos", b"world_pos"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["distance", b"distance", "world_pos", b"world_pos"]) -> None: ... + def HasField(self, field_name: typing.Literal["distance", b"distance", "world_pos", b"world_pos"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["distance", b"distance", "world_pos", b"world_pos"]) -> None: ... global___ActionObserverCameraMove = ActionObserverCameraMove -@typing_extensions.final +@typing.final class ActionObserverCameraFollowPlayer(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -2029,12 +2078,12 @@ class ActionObserverCameraFollowPlayer(google.protobuf.message.Message): *, player_id: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["player_id", b"player_id"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["player_id", b"player_id"]) -> None: ... + def HasField(self, field_name: typing.Literal["player_id", b"player_id"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["player_id", b"player_id"]) -> None: ... global___ActionObserverCameraFollowPlayer = ActionObserverCameraFollowPlayer -@typing_extensions.final +@typing.final class ActionObserverCameraFollowUnits(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -2046,11 +2095,11 @@ class ActionObserverCameraFollowUnits(google.protobuf.message.Message): *, unit_tags: collections.abc.Iterable[builtins.int] | None = ..., ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["unit_tags", b"unit_tags"]) -> None: ... + def ClearField(self, field_name: typing.Literal["unit_tags", b"unit_tags"]) -> None: ... global___ActionObserverCameraFollowUnits = ActionObserverCameraFollowUnits -@typing_extensions.final +@typing.final class PlayerResult(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -2064,7 +2113,7 @@ class PlayerResult(google.protobuf.message.Message): player_id: builtins.int | None = ..., result: global___Result.ValueType | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["player_id", b"player_id", "result", b"result"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["player_id", b"player_id", "result", b"result"]) -> None: ... + def HasField(self, field_name: typing.Literal["player_id", b"player_id", "result", b"result"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["player_id", b"player_id", "result", b"result"]) -> None: ... global___PlayerResult = PlayerResult diff --git a/stubs/s2clientprotocol/s2clientprotocol/score_pb2.pyi b/stubs/s2clientprotocol/s2clientprotocol/score_pb2.pyi index 6ccd3359c..95ee7dd7f 100644 --- a/stubs/s2clientprotocol/s2clientprotocol/score_pb2.pyi +++ b/stubs/s2clientprotocol/s2clientprotocol/score_pb2.pyi @@ -2,6 +2,7 @@ @generated by mypy-protobuf. Do not edit manually! isort:skip_file """ + import builtins import sys import typing @@ -17,7 +18,7 @@ else: DESCRIPTOR: google.protobuf.descriptor.FileDescriptor -@typing_extensions.final +@typing.final class Score(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -53,12 +54,12 @@ class Score(google.protobuf.message.Message): score: builtins.int | None = ..., score_details: global___ScoreDetails | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["score", b"score", "score_details", b"score_details", "score_type", b"score_type"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["score", b"score", "score_details", b"score_details", "score_type", b"score_type"]) -> None: ... + def HasField(self, field_name: typing.Literal["score", b"score", "score_details", b"score_details", "score_type", b"score_type"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["score", b"score", "score_details", b"score_details", "score_type", b"score_type"]) -> None: ... global___Score = Score -@typing_extensions.final +@typing.final class CategoryScoreDetails(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -82,12 +83,12 @@ class CategoryScoreDetails(google.protobuf.message.Message): technology: builtins.float | None = ..., upgrade: builtins.float | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["army", b"army", "economy", b"economy", "none", b"none", "technology", b"technology", "upgrade", b"upgrade"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["army", b"army", "economy", b"economy", "none", b"none", "technology", b"technology", "upgrade", b"upgrade"]) -> None: ... + def HasField(self, field_name: typing.Literal["army", b"army", "economy", b"economy", "none", b"none", "technology", b"technology", "upgrade", b"upgrade"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["army", b"army", "economy", b"economy", "none", b"none", "technology", b"technology", "upgrade", b"upgrade"]) -> None: ... global___CategoryScoreDetails = CategoryScoreDetails -@typing_extensions.final +@typing.final class VitalScoreDetails(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -104,12 +105,12 @@ class VitalScoreDetails(google.protobuf.message.Message): shields: builtins.float | None = ..., energy: builtins.float | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["energy", b"energy", "life", b"life", "shields", b"shields"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["energy", b"energy", "life", b"life", "shields", b"shields"]) -> None: ... + def HasField(self, field_name: typing.Literal["energy", b"energy", "life", b"life", "shields", b"shields"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["energy", b"energy", "life", b"life", "shields", b"shields"]) -> None: ... global___VitalScoreDetails = VitalScoreDetails -@typing_extensions.final +@typing.final class ScoreDetails(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -165,6 +166,10 @@ class ScoreDetails(google.protobuf.message.Message): """Sum of spent minerals at the moment it is spent. For example, this number is incremented by 50 the moment an scv is queued in a command center. It is decremented by 50 if that unit is canceled.""" spent_vespene: builtins.float """Sum of spent vespene at the moment it is spent. For example, this number is incremented by 50 when a reaper is queued but decremented by 50 if it is canceled.""" + current_apm: builtins.float + """Recent raw APM.""" + current_effective_apm: builtins.float + """Recent effective APM.""" @property def food_used(self) -> global___CategoryScoreDetails: """The following entries contains floating point values for the following catgories: @@ -176,49 +181,59 @@ class ScoreDetails(google.protobuf.message.Message): Sum of food, or supply, utilized in the categories above. """ + @property def killed_minerals(self) -> global___CategoryScoreDetails: """Sum of enemies catagories destroyed in minerals.""" + @property def killed_vespene(self) -> global___CategoryScoreDetails: """Sum of enemies catagories destroyed in vespene.""" + @property def lost_minerals(self) -> global___CategoryScoreDetails: """ Sum of lost minerals for the player in each category.""" + @property def lost_vespene(self) -> global___CategoryScoreDetails: """Sum of lost vespene for the player in each category.""" + @property def friendly_fire_minerals(self) -> global___CategoryScoreDetails: """Sum of the lost minerals via destroying the players own units/buildings.""" + @property def friendly_fire_vespene(self) -> global___CategoryScoreDetails: """Sum of the lost vespene via destroying the players own units/buildings.""" + @property def used_minerals(self) -> global___CategoryScoreDetails: """Sum of used minerals for the player in each category for each existing unit or upgrade. Therefore if a unit died worth 50 mierals this number will be decremented by 50.""" + @property def used_vespene(self) -> global___CategoryScoreDetails: """Sum of used vespene for the player in each category. Therefore if a unit died worth 50 vespene this number will be decremented by 50.""" + @property def total_used_minerals(self) -> global___CategoryScoreDetails: """Sum of used minerals throughout the entire game for each category. Unliked used_minerals, this value is never decremented.""" + @property def total_used_vespene(self) -> global___CategoryScoreDetails: """Sum of used vespene throughout the entire game for each category. Unliked used_vespene, this value is never decremented.""" + @property def total_damage_dealt(self) -> global___VitalScoreDetails: """Sum of damage dealt to the player's opponent for each category.""" + @property def total_damage_taken(self) -> global___VitalScoreDetails: """Sum of damage taken by the player for each category.""" + @property def total_healed(self) -> global___VitalScoreDetails: """Sum of health healed by the player. Note that technology can be healed (by queens) or repaired (by scvs).""" - current_apm: builtins.float - """Recent raw APM.""" - current_effective_apm: builtins.float - """Recent effective APM.""" + def __init__( self, *, @@ -251,7 +266,7 @@ class ScoreDetails(google.protobuf.message.Message): current_apm: builtins.float | None = ..., current_effective_apm: builtins.float | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["collected_minerals", b"collected_minerals", "collected_vespene", b"collected_vespene", "collection_rate_minerals", b"collection_rate_minerals", "collection_rate_vespene", b"collection_rate_vespene", "current_apm", b"current_apm", "current_effective_apm", b"current_effective_apm", "food_used", b"food_used", "friendly_fire_minerals", b"friendly_fire_minerals", "friendly_fire_vespene", b"friendly_fire_vespene", "idle_production_time", b"idle_production_time", "idle_worker_time", b"idle_worker_time", "killed_minerals", b"killed_minerals", "killed_value_structures", b"killed_value_structures", "killed_value_units", b"killed_value_units", "killed_vespene", b"killed_vespene", "lost_minerals", b"lost_minerals", "lost_vespene", b"lost_vespene", "spent_minerals", b"spent_minerals", "spent_vespene", b"spent_vespene", "total_damage_dealt", b"total_damage_dealt", "total_damage_taken", b"total_damage_taken", "total_healed", b"total_healed", "total_used_minerals", b"total_used_minerals", "total_used_vespene", b"total_used_vespene", "total_value_structures", b"total_value_structures", "total_value_units", b"total_value_units", "used_minerals", b"used_minerals", "used_vespene", b"used_vespene"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["collected_minerals", b"collected_minerals", "collected_vespene", b"collected_vespene", "collection_rate_minerals", b"collection_rate_minerals", "collection_rate_vespene", b"collection_rate_vespene", "current_apm", b"current_apm", "current_effective_apm", b"current_effective_apm", "food_used", b"food_used", "friendly_fire_minerals", b"friendly_fire_minerals", "friendly_fire_vespene", b"friendly_fire_vespene", "idle_production_time", b"idle_production_time", "idle_worker_time", b"idle_worker_time", "killed_minerals", b"killed_minerals", "killed_value_structures", b"killed_value_structures", "killed_value_units", b"killed_value_units", "killed_vespene", b"killed_vespene", "lost_minerals", b"lost_minerals", "lost_vespene", b"lost_vespene", "spent_minerals", b"spent_minerals", "spent_vespene", b"spent_vespene", "total_damage_dealt", b"total_damage_dealt", "total_damage_taken", b"total_damage_taken", "total_healed", b"total_healed", "total_used_minerals", b"total_used_minerals", "total_used_vespene", b"total_used_vespene", "total_value_structures", b"total_value_structures", "total_value_units", b"total_value_units", "used_minerals", b"used_minerals", "used_vespene", b"used_vespene"]) -> None: ... + def HasField(self, field_name: typing.Literal["collected_minerals", b"collected_minerals", "collected_vespene", b"collected_vespene", "collection_rate_minerals", b"collection_rate_minerals", "collection_rate_vespene", b"collection_rate_vespene", "current_apm", b"current_apm", "current_effective_apm", b"current_effective_apm", "food_used", b"food_used", "friendly_fire_minerals", b"friendly_fire_minerals", "friendly_fire_vespene", b"friendly_fire_vespene", "idle_production_time", b"idle_production_time", "idle_worker_time", b"idle_worker_time", "killed_minerals", b"killed_minerals", "killed_value_structures", b"killed_value_structures", "killed_value_units", b"killed_value_units", "killed_vespene", b"killed_vespene", "lost_minerals", b"lost_minerals", "lost_vespene", b"lost_vespene", "spent_minerals", b"spent_minerals", "spent_vespene", b"spent_vespene", "total_damage_dealt", b"total_damage_dealt", "total_damage_taken", b"total_damage_taken", "total_healed", b"total_healed", "total_used_minerals", b"total_used_minerals", "total_used_vespene", b"total_used_vespene", "total_value_structures", b"total_value_structures", "total_value_units", b"total_value_units", "used_minerals", b"used_minerals", "used_vespene", b"used_vespene"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["collected_minerals", b"collected_minerals", "collected_vespene", b"collected_vespene", "collection_rate_minerals", b"collection_rate_minerals", "collection_rate_vespene", b"collection_rate_vespene", "current_apm", b"current_apm", "current_effective_apm", b"current_effective_apm", "food_used", b"food_used", "friendly_fire_minerals", b"friendly_fire_minerals", "friendly_fire_vespene", b"friendly_fire_vespene", "idle_production_time", b"idle_production_time", "idle_worker_time", b"idle_worker_time", "killed_minerals", b"killed_minerals", "killed_value_structures", b"killed_value_structures", "killed_value_units", b"killed_value_units", "killed_vespene", b"killed_vespene", "lost_minerals", b"lost_minerals", "lost_vespene", b"lost_vespene", "spent_minerals", b"spent_minerals", "spent_vespene", b"spent_vespene", "total_damage_dealt", b"total_damage_dealt", "total_damage_taken", b"total_damage_taken", "total_healed", b"total_healed", "total_used_minerals", b"total_used_minerals", "total_used_vespene", b"total_used_vespene", "total_value_structures", b"total_value_structures", "total_value_units", b"total_value_units", "used_minerals", b"used_minerals", "used_vespene", b"used_vespene"]) -> None: ... global___ScoreDetails = ScoreDetails diff --git a/stubs/s2clientprotocol/s2clientprotocol/spatial_pb2.pyi b/stubs/s2clientprotocol/s2clientprotocol/spatial_pb2.pyi index d76fbf1f1..f2e686f08 100644 --- a/stubs/s2clientprotocol/s2clientprotocol/spatial_pb2.pyi +++ b/stubs/s2clientprotocol/s2clientprotocol/spatial_pb2.pyi @@ -2,6 +2,7 @@ @generated by mypy-protobuf. Do not edit manually! isort:skip_file """ + import builtins import collections.abc import sys @@ -20,7 +21,7 @@ else: DESCRIPTOR: google.protobuf.descriptor.FileDescriptor -@typing_extensions.final +@typing.final class ObservationFeatureLayer(google.protobuf.message.Message): """ Observation - Feature Layer @@ -40,12 +41,12 @@ class ObservationFeatureLayer(google.protobuf.message.Message): renders: global___FeatureLayers | None = ..., minimap_renders: global___FeatureLayersMinimap | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["minimap_renders", b"minimap_renders", "renders", b"renders"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["minimap_renders", b"minimap_renders", "renders", b"renders"]) -> None: ... + def HasField(self, field_name: typing.Literal["minimap_renders", b"minimap_renders", "renders", b"renders"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["minimap_renders", b"minimap_renders", "renders", b"renders"]) -> None: ... global___ObservationFeatureLayer = ObservationFeatureLayer -@typing_extensions.final +@typing.final class FeatureLayers(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -79,84 +80,111 @@ class FeatureLayers(google.protobuf.message.Message): @property def height_map(self) -> s2clientprotocol.common_pb2.ImageData: """uint8. Terrain height. World space units of [-200, 200] encoded into [0, 255].""" + @property def visibility_map(self) -> s2clientprotocol.common_pb2.ImageData: """uint8. 0=Hidden, 1=Fogged, 2=Visible, 3=FullHidden""" + @property def creep(self) -> s2clientprotocol.common_pb2.ImageData: """1-bit. Zerg creep.""" + @property def power(self) -> s2clientprotocol.common_pb2.ImageData: """1-bit. Protoss power.""" + @property def player_id(self) -> s2clientprotocol.common_pb2.ImageData: """uint8. Participants: [1, 15] Neutral: 16""" + @property def unit_type(self) -> s2clientprotocol.common_pb2.ImageData: """int32. Unique identifier for type of unit.""" + @property def selected(self) -> s2clientprotocol.common_pb2.ImageData: """1-bit. Selected units.""" + @property def unit_hit_points(self) -> s2clientprotocol.common_pb2.ImageData: """int32.""" + @property def unit_hit_points_ratio(self) -> s2clientprotocol.common_pb2.ImageData: """uint8. Ratio of current health to max health. [0%, 100%] encoded into [0, 255].""" + @property def unit_energy(self) -> s2clientprotocol.common_pb2.ImageData: """int32.""" + @property def unit_energy_ratio(self) -> s2clientprotocol.common_pb2.ImageData: """uint8. Ratio of current energy to max energy. [0%, 100%] encoded into [0, 255].""" + @property def unit_shields(self) -> s2clientprotocol.common_pb2.ImageData: """int32.""" + @property def unit_shields_ratio(self) -> s2clientprotocol.common_pb2.ImageData: """uint8. Ratio of current shields to max shields. [0%, 100%] encoded into [0, 255].""" + @property def player_relative(self) -> s2clientprotocol.common_pb2.ImageData: """uint8. See "Alliance" enum in raw.proto. Range: [1, 4]""" + @property def unit_density_aa(self) -> s2clientprotocol.common_pb2.ImageData: """uint8. Density of units overlapping a pixel, anti-aliased. [0.0, 16.0f] encoded into [0, 255].""" + @property def unit_density(self) -> s2clientprotocol.common_pb2.ImageData: """uint8. Count of units overlapping a pixel.""" + @property def effects(self) -> s2clientprotocol.common_pb2.ImageData: """uint8. Visuals of persistent abilities. (eg. Psistorm)""" + @property def hallucinations(self) -> s2clientprotocol.common_pb2.ImageData: """1-bit. Whether the unit here is a hallucination.""" + @property def cloaked(self) -> s2clientprotocol.common_pb2.ImageData: """1-bit. Whether the unit here is cloaked. Hidden units will show up too, but with less details in other layers.""" + @property def blip(self) -> s2clientprotocol.common_pb2.ImageData: """1-bit. Whether the unit here is a blip.""" + @property def buffs(self) -> s2clientprotocol.common_pb2.ImageData: """int32. One of the buffs applied to this unit. Extras are ignored.""" + @property def buff_duration(self) -> s2clientprotocol.common_pb2.ImageData: """uint8. Ratio of buff remaining. [0%, 100%] encoded into [0, 255].""" + @property def active(self) -> s2clientprotocol.common_pb2.ImageData: """1-bit. Whether the unit here is active.""" + @property def build_progress(self) -> s2clientprotocol.common_pb2.ImageData: """uint8. How far along the building is building something. [0%, 100%] encoded into [0, 255].""" + @property def buildable(self) -> s2clientprotocol.common_pb2.ImageData: """1-bit. Whether a building can be built here.""" + @property def pathable(self) -> s2clientprotocol.common_pb2.ImageData: """1-bit. Whether a unit can walk here.""" + @property def placeholder(self) -> s2clientprotocol.common_pb2.ImageData: """1-bit. Whether the unit here is a placeholder building to be constructed.""" + def __init__( self, *, @@ -188,12 +216,12 @@ class FeatureLayers(google.protobuf.message.Message): pathable: s2clientprotocol.common_pb2.ImageData | None = ..., placeholder: s2clientprotocol.common_pb2.ImageData | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["active", b"active", "blip", b"blip", "buff_duration", b"buff_duration", "buffs", b"buffs", "build_progress", b"build_progress", "buildable", b"buildable", "cloaked", b"cloaked", "creep", b"creep", "effects", b"effects", "hallucinations", b"hallucinations", "height_map", b"height_map", "pathable", b"pathable", "placeholder", b"placeholder", "player_id", b"player_id", "player_relative", b"player_relative", "power", b"power", "selected", b"selected", "unit_density", b"unit_density", "unit_density_aa", b"unit_density_aa", "unit_energy", b"unit_energy", "unit_energy_ratio", b"unit_energy_ratio", "unit_hit_points", b"unit_hit_points", "unit_hit_points_ratio", b"unit_hit_points_ratio", "unit_shields", b"unit_shields", "unit_shields_ratio", b"unit_shields_ratio", "unit_type", b"unit_type", "visibility_map", b"visibility_map"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["active", b"active", "blip", b"blip", "buff_duration", b"buff_duration", "buffs", b"buffs", "build_progress", b"build_progress", "buildable", b"buildable", "cloaked", b"cloaked", "creep", b"creep", "effects", b"effects", "hallucinations", b"hallucinations", "height_map", b"height_map", "pathable", b"pathable", "placeholder", b"placeholder", "player_id", b"player_id", "player_relative", b"player_relative", "power", b"power", "selected", b"selected", "unit_density", b"unit_density", "unit_density_aa", b"unit_density_aa", "unit_energy", b"unit_energy", "unit_energy_ratio", b"unit_energy_ratio", "unit_hit_points", b"unit_hit_points", "unit_hit_points_ratio", b"unit_hit_points_ratio", "unit_shields", b"unit_shields", "unit_shields_ratio", b"unit_shields_ratio", "unit_type", b"unit_type", "visibility_map", b"visibility_map"]) -> None: ... + def HasField(self, field_name: typing.Literal["active", b"active", "blip", b"blip", "buff_duration", b"buff_duration", "buffs", b"buffs", "build_progress", b"build_progress", "buildable", b"buildable", "cloaked", b"cloaked", "creep", b"creep", "effects", b"effects", "hallucinations", b"hallucinations", "height_map", b"height_map", "pathable", b"pathable", "placeholder", b"placeholder", "player_id", b"player_id", "player_relative", b"player_relative", "power", b"power", "selected", b"selected", "unit_density", b"unit_density", "unit_density_aa", b"unit_density_aa", "unit_energy", b"unit_energy", "unit_energy_ratio", b"unit_energy_ratio", "unit_hit_points", b"unit_hit_points", "unit_hit_points_ratio", b"unit_hit_points_ratio", "unit_shields", b"unit_shields", "unit_shields_ratio", b"unit_shields_ratio", "unit_type", b"unit_type", "visibility_map", b"visibility_map"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["active", b"active", "blip", b"blip", "buff_duration", b"buff_duration", "buffs", b"buffs", "build_progress", b"build_progress", "buildable", b"buildable", "cloaked", b"cloaked", "creep", b"creep", "effects", b"effects", "hallucinations", b"hallucinations", "height_map", b"height_map", "pathable", b"pathable", "placeholder", b"placeholder", "player_id", b"player_id", "player_relative", b"player_relative", "power", b"power", "selected", b"selected", "unit_density", b"unit_density", "unit_density_aa", b"unit_density_aa", "unit_energy", b"unit_energy", "unit_energy_ratio", b"unit_energy_ratio", "unit_hit_points", b"unit_hit_points", "unit_hit_points_ratio", b"unit_hit_points_ratio", "unit_shields", b"unit_shields", "unit_shields_ratio", b"unit_shields_ratio", "unit_type", b"unit_type", "visibility_map", b"visibility_map"]) -> None: ... global___FeatureLayers = FeatureLayers -@typing_extensions.final +@typing.final class FeatureLayersMinimap(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -211,38 +239,49 @@ class FeatureLayersMinimap(google.protobuf.message.Message): @property def height_map(self) -> s2clientprotocol.common_pb2.ImageData: """uint8. Terrain height. World space units of [-200, 200] encoded into [0, 255].""" + @property def visibility_map(self) -> s2clientprotocol.common_pb2.ImageData: """uint8. 0=Hidden, 1=Fogged, 2=Visible, 3=FullHidden""" + @property def creep(self) -> s2clientprotocol.common_pb2.ImageData: """1-bit. Zerg creep.""" + @property def camera(self) -> s2clientprotocol.common_pb2.ImageData: """1-bit. Area covered by the camera.""" + @property def player_id(self) -> s2clientprotocol.common_pb2.ImageData: """uint8. Participants: [1, 15] Neutral: 16""" + @property def player_relative(self) -> s2clientprotocol.common_pb2.ImageData: """uint8. See "Alliance" enum in raw.proto. Range: [1, 4]""" + @property def selected(self) -> s2clientprotocol.common_pb2.ImageData: """1-bit. Selected units.""" + @property def alerts(self) -> s2clientprotocol.common_pb2.ImageData: """1-bit. Shows 'UnitAttacked' alert location.""" + @property def buildable(self) -> s2clientprotocol.common_pb2.ImageData: """1-bit. Whether a building can be built here.""" + @property def pathable(self) -> s2clientprotocol.common_pb2.ImageData: """1-bit. Whether a unit can walk here.""" + @property def unit_type(self) -> s2clientprotocol.common_pb2.ImageData: """Cheat layers, enable with SpatialCameraSetup.allow_cheating_layers. int32. Unique identifier for type of unit. """ + def __init__( self, *, @@ -258,12 +297,12 @@ class FeatureLayersMinimap(google.protobuf.message.Message): pathable: s2clientprotocol.common_pb2.ImageData | None = ..., unit_type: s2clientprotocol.common_pb2.ImageData | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["alerts", b"alerts", "buildable", b"buildable", "camera", b"camera", "creep", b"creep", "height_map", b"height_map", "pathable", b"pathable", "player_id", b"player_id", "player_relative", b"player_relative", "selected", b"selected", "unit_type", b"unit_type", "visibility_map", b"visibility_map"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["alerts", b"alerts", "buildable", b"buildable", "camera", b"camera", "creep", b"creep", "height_map", b"height_map", "pathable", b"pathable", "player_id", b"player_id", "player_relative", b"player_relative", "selected", b"selected", "unit_type", b"unit_type", "visibility_map", b"visibility_map"]) -> None: ... + def HasField(self, field_name: typing.Literal["alerts", b"alerts", "buildable", b"buildable", "camera", b"camera", "creep", b"creep", "height_map", b"height_map", "pathable", b"pathable", "player_id", b"player_id", "player_relative", b"player_relative", "selected", b"selected", "unit_type", b"unit_type", "visibility_map", b"visibility_map"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["alerts", b"alerts", "buildable", b"buildable", "camera", b"camera", "creep", b"creep", "height_map", b"height_map", "pathable", b"pathable", "player_id", b"player_id", "player_relative", b"player_relative", "selected", b"selected", "unit_type", b"unit_type", "visibility_map", b"visibility_map"]) -> None: ... global___FeatureLayersMinimap = FeatureLayersMinimap -@typing_extensions.final +@typing.final class ObservationRender(google.protobuf.message.Message): """ Observation - Rendered @@ -283,12 +322,12 @@ class ObservationRender(google.protobuf.message.Message): map: s2clientprotocol.common_pb2.ImageData | None = ..., minimap: s2clientprotocol.common_pb2.ImageData | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["map", b"map", "minimap", b"minimap"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["map", b"map", "minimap", b"minimap"]) -> None: ... + def HasField(self, field_name: typing.Literal["map", b"map", "minimap", b"minimap"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["map", b"map", "minimap", b"minimap"]) -> None: ... global___ObservationRender = ObservationRender -@typing_extensions.final +@typing.final class ActionSpatial(google.protobuf.message.Message): """ Action @@ -316,13 +355,13 @@ class ActionSpatial(google.protobuf.message.Message): unit_selection_point: global___ActionSpatialUnitSelectionPoint | None = ..., unit_selection_rect: global___ActionSpatialUnitSelectionRect | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["action", b"action", "camera_move", b"camera_move", "unit_command", b"unit_command", "unit_selection_point", b"unit_selection_point", "unit_selection_rect", b"unit_selection_rect"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["action", b"action", "camera_move", b"camera_move", "unit_command", b"unit_command", "unit_selection_point", b"unit_selection_point", "unit_selection_rect", b"unit_selection_rect"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["action", b"action"]) -> typing_extensions.Literal["unit_command", "camera_move", "unit_selection_point", "unit_selection_rect"] | None: ... + def HasField(self, field_name: typing.Literal["action", b"action", "camera_move", b"camera_move", "unit_command", b"unit_command", "unit_selection_point", b"unit_selection_point", "unit_selection_rect", b"unit_selection_rect"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["action", b"action", "camera_move", b"camera_move", "unit_command", b"unit_command", "unit_selection_point", b"unit_selection_point", "unit_selection_rect", b"unit_selection_rect"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["action", b"action"]) -> typing.Literal["unit_command", "camera_move", "unit_selection_point", "unit_selection_rect"] | None: ... global___ActionSpatial = ActionSpatial -@typing_extensions.final +@typing.final class ActionSpatialUnitCommand(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -331,12 +370,12 @@ class ActionSpatialUnitCommand(google.protobuf.message.Message): TARGET_MINIMAP_COORD_FIELD_NUMBER: builtins.int QUEUE_COMMAND_FIELD_NUMBER: builtins.int ability_id: builtins.int + queue_command: builtins.bool + """Equivalent to shift+command.""" @property def target_screen_coord(self) -> s2clientprotocol.common_pb2.PointI: ... @property def target_minimap_coord(self) -> s2clientprotocol.common_pb2.PointI: ... - queue_command: builtins.bool - """Equivalent to shift+command.""" def __init__( self, *, @@ -345,13 +384,13 @@ class ActionSpatialUnitCommand(google.protobuf.message.Message): target_minimap_coord: s2clientprotocol.common_pb2.PointI | None = ..., queue_command: builtins.bool | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "queue_command", b"queue_command", "target", b"target", "target_minimap_coord", b"target_minimap_coord", "target_screen_coord", b"target_screen_coord"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "queue_command", b"queue_command", "target", b"target", "target_minimap_coord", b"target_minimap_coord", "target_screen_coord", b"target_screen_coord"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["target", b"target"]) -> typing_extensions.Literal["target_screen_coord", "target_minimap_coord"] | None: ... + def HasField(self, field_name: typing.Literal["ability_id", b"ability_id", "queue_command", b"queue_command", "target", b"target", "target_minimap_coord", b"target_minimap_coord", "target_screen_coord", b"target_screen_coord"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["ability_id", b"ability_id", "queue_command", b"queue_command", "target", b"target", "target_minimap_coord", b"target_minimap_coord", "target_screen_coord", b"target_screen_coord"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["target", b"target"]) -> typing.Literal["target_screen_coord", "target_minimap_coord"] | None: ... global___ActionSpatialUnitCommand = ActionSpatialUnitCommand -@typing_extensions.final +@typing.final class ActionSpatialCameraMove(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -359,17 +398,18 @@ class ActionSpatialCameraMove(google.protobuf.message.Message): @property def center_minimap(self) -> s2clientprotocol.common_pb2.PointI: """Simulates a click on the minimap to move the camera.""" + def __init__( self, *, center_minimap: s2clientprotocol.common_pb2.PointI | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["center_minimap", b"center_minimap"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["center_minimap", b"center_minimap"]) -> None: ... + def HasField(self, field_name: typing.Literal["center_minimap", b"center_minimap"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["center_minimap", b"center_minimap"]) -> None: ... global___ActionSpatialCameraMove = ActionSpatialCameraMove -@typing_extensions.final +@typing.final class ActionSpatialUnitSelectionPoint(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -400,38 +440,39 @@ class ActionSpatialUnitSelectionPoint(google.protobuf.message.Message): SELECTION_SCREEN_COORD_FIELD_NUMBER: builtins.int TYPE_FIELD_NUMBER: builtins.int + type: global___ActionSpatialUnitSelectionPoint.Type.ValueType @property def selection_screen_coord(self) -> s2clientprotocol.common_pb2.PointI: ... - type: global___ActionSpatialUnitSelectionPoint.Type.ValueType def __init__( self, *, selection_screen_coord: s2clientprotocol.common_pb2.PointI | None = ..., type: global___ActionSpatialUnitSelectionPoint.Type.ValueType | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["selection_screen_coord", b"selection_screen_coord", "type", b"type"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["selection_screen_coord", b"selection_screen_coord", "type", b"type"]) -> None: ... + def HasField(self, field_name: typing.Literal["selection_screen_coord", b"selection_screen_coord", "type", b"type"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["selection_screen_coord", b"selection_screen_coord", "type", b"type"]) -> None: ... global___ActionSpatialUnitSelectionPoint = ActionSpatialUnitSelectionPoint -@typing_extensions.final +@typing.final class ActionSpatialUnitSelectionRect(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor SELECTION_SCREEN_COORD_FIELD_NUMBER: builtins.int SELECTION_ADD_FIELD_NUMBER: builtins.int + selection_add: builtins.bool + """Equivalent to shift+drag. Adds units to selection.""" @property def selection_screen_coord(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[s2clientprotocol.common_pb2.RectangleI]: """Eventually this should not be an array, but a single field (multiple would be cheating).""" - selection_add: builtins.bool - """Equivalent to shift+drag. Adds units to selection.""" + def __init__( self, *, selection_screen_coord: collections.abc.Iterable[s2clientprotocol.common_pb2.RectangleI] | None = ..., selection_add: builtins.bool | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["selection_add", b"selection_add"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["selection_add", b"selection_add", "selection_screen_coord", b"selection_screen_coord"]) -> None: ... + def HasField(self, field_name: typing.Literal["selection_add", b"selection_add"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["selection_add", b"selection_add", "selection_screen_coord", b"selection_screen_coord"]) -> None: ... global___ActionSpatialUnitSelectionRect = ActionSpatialUnitSelectionRect diff --git a/stubs/s2clientprotocol/s2clientprotocol/ui_pb2.pyi b/stubs/s2clientprotocol/s2clientprotocol/ui_pb2.pyi index c0499b585..65a0e165a 100644 --- a/stubs/s2clientprotocol/s2clientprotocol/ui_pb2.pyi +++ b/stubs/s2clientprotocol/s2clientprotocol/ui_pb2.pyi @@ -2,6 +2,7 @@ @generated by mypy-protobuf. Do not edit manually! isort:skip_file """ + import builtins import collections.abc import sys @@ -19,7 +20,7 @@ else: DESCRIPTOR: google.protobuf.descriptor.FileDescriptor -@typing_extensions.final +@typing.final class ObservationUI(google.protobuf.message.Message): """ Observation @@ -51,13 +52,13 @@ class ObservationUI(google.protobuf.message.Message): cargo: global___CargoPanel | None = ..., production: global___ProductionPanel | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["cargo", b"cargo", "multi", b"multi", "panel", b"panel", "production", b"production", "single", b"single"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["cargo", b"cargo", "groups", b"groups", "multi", b"multi", "panel", b"panel", "production", b"production", "single", b"single"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["panel", b"panel"]) -> typing_extensions.Literal["single", "multi", "cargo", "production"] | None: ... + def HasField(self, field_name: typing.Literal["cargo", b"cargo", "multi", b"multi", "panel", b"panel", "production", b"production", "single", b"single"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["cargo", b"cargo", "groups", b"groups", "multi", b"multi", "panel", b"panel", "production", b"production", "single", b"single"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["panel", b"panel"]) -> typing.Literal["single", "multi", "cargo", "production"] | None: ... global___ObservationUI = ObservationUI -@typing_extensions.final +@typing.final class ControlGroup(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -74,12 +75,12 @@ class ControlGroup(google.protobuf.message.Message): leader_unit_type: builtins.int | None = ..., count: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["control_group_index", b"control_group_index", "count", b"count", "leader_unit_type", b"leader_unit_type"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["control_group_index", b"control_group_index", "count", b"count", "leader_unit_type", b"leader_unit_type"]) -> None: ... + def HasField(self, field_name: typing.Literal["control_group_index", b"control_group_index", "count", b"count", "leader_unit_type", b"leader_unit_type"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["control_group_index", b"control_group_index", "count", b"count", "leader_unit_type", b"leader_unit_type"]) -> None: ... global___ControlGroup = ControlGroup -@typing_extensions.final +@typing.final class UnitInfo(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -102,11 +103,11 @@ class UnitInfo(google.protobuf.message.Message): transport_slots_taken: builtins.int build_progress: builtins.float """Range: [0.0, 1.0]""" - @property - def add_on(self) -> global___UnitInfo: ... max_health: builtins.int max_shields: builtins.int max_energy: builtins.int + @property + def add_on(self) -> global___UnitInfo: ... def __init__( self, *, @@ -122,12 +123,12 @@ class UnitInfo(google.protobuf.message.Message): max_shields: builtins.int | None = ..., max_energy: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["add_on", b"add_on", "build_progress", b"build_progress", "energy", b"energy", "health", b"health", "max_energy", b"max_energy", "max_health", b"max_health", "max_shields", b"max_shields", "player_relative", b"player_relative", "shields", b"shields", "transport_slots_taken", b"transport_slots_taken", "unit_type", b"unit_type"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["add_on", b"add_on", "build_progress", b"build_progress", "energy", b"energy", "health", b"health", "max_energy", b"max_energy", "max_health", b"max_health", "max_shields", b"max_shields", "player_relative", b"player_relative", "shields", b"shields", "transport_slots_taken", b"transport_slots_taken", "unit_type", b"unit_type"]) -> None: ... + def HasField(self, field_name: typing.Literal["add_on", b"add_on", "build_progress", b"build_progress", "energy", b"energy", "health", b"health", "max_energy", b"max_energy", "max_health", b"max_health", "max_shields", b"max_shields", "player_relative", b"player_relative", "shields", b"shields", "transport_slots_taken", b"transport_slots_taken", "unit_type", b"unit_type"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["add_on", b"add_on", "build_progress", b"build_progress", "energy", b"energy", "health", b"health", "max_energy", b"max_energy", "max_health", b"max_health", "max_shields", b"max_shields", "player_relative", b"player_relative", "shields", b"shields", "transport_slots_taken", b"transport_slots_taken", "unit_type", b"unit_type"]) -> None: ... global___UnitInfo = UnitInfo -@typing_extensions.final +@typing.final class SinglePanel(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -136,12 +137,12 @@ class SinglePanel(google.protobuf.message.Message): ARMOR_UPGRADE_LEVEL_FIELD_NUMBER: builtins.int SHIELD_UPGRADE_LEVEL_FIELD_NUMBER: builtins.int BUFFS_FIELD_NUMBER: builtins.int - @property - def unit(self) -> global___UnitInfo: ... attack_upgrade_level: builtins.int armor_upgrade_level: builtins.int shield_upgrade_level: builtins.int @property + def unit(self) -> global___UnitInfo: ... + @property def buffs(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: ... def __init__( self, @@ -152,12 +153,12 @@ class SinglePanel(google.protobuf.message.Message): shield_upgrade_level: builtins.int | None = ..., buffs: collections.abc.Iterable[builtins.int] | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["armor_upgrade_level", b"armor_upgrade_level", "attack_upgrade_level", b"attack_upgrade_level", "shield_upgrade_level", b"shield_upgrade_level", "unit", b"unit"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["armor_upgrade_level", b"armor_upgrade_level", "attack_upgrade_level", b"attack_upgrade_level", "buffs", b"buffs", "shield_upgrade_level", b"shield_upgrade_level", "unit", b"unit"]) -> None: ... + def HasField(self, field_name: typing.Literal["armor_upgrade_level", b"armor_upgrade_level", "attack_upgrade_level", b"attack_upgrade_level", "shield_upgrade_level", b"shield_upgrade_level", "unit", b"unit"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["armor_upgrade_level", b"armor_upgrade_level", "attack_upgrade_level", b"attack_upgrade_level", "buffs", b"buffs", "shield_upgrade_level", b"shield_upgrade_level", "unit", b"unit"]) -> None: ... global___SinglePanel = SinglePanel -@typing_extensions.final +@typing.final class MultiPanel(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -169,23 +170,23 @@ class MultiPanel(google.protobuf.message.Message): *, units: collections.abc.Iterable[global___UnitInfo] | None = ..., ) -> None: ... - def ClearField(self, field_name: typing_extensions.Literal["units", b"units"]) -> None: ... + def ClearField(self, field_name: typing.Literal["units", b"units"]) -> None: ... global___MultiPanel = MultiPanel -@typing_extensions.final +@typing.final class CargoPanel(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor UNIT_FIELD_NUMBER: builtins.int PASSENGERS_FIELD_NUMBER: builtins.int SLOTS_AVAILABLE_FIELD_NUMBER: builtins.int + slots_available: builtins.int + """TODO: Change to cargo size""" @property def unit(self) -> global___UnitInfo: ... @property def passengers(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UnitInfo]: ... - slots_available: builtins.int - """TODO: Change to cargo size""" def __init__( self, *, @@ -193,12 +194,12 @@ class CargoPanel(google.protobuf.message.Message): passengers: collections.abc.Iterable[global___UnitInfo] | None = ..., slots_available: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["slots_available", b"slots_available", "unit", b"unit"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["passengers", b"passengers", "slots_available", b"slots_available", "unit", b"unit"]) -> None: ... + def HasField(self, field_name: typing.Literal["slots_available", b"slots_available", "unit", b"unit"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["passengers", b"passengers", "slots_available", b"slots_available", "unit", b"unit"]) -> None: ... global___CargoPanel = CargoPanel -@typing_extensions.final +@typing.final class BuildItem(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -213,12 +214,12 @@ class BuildItem(google.protobuf.message.Message): ability_id: builtins.int | None = ..., build_progress: builtins.float | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "build_progress", b"build_progress"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id", "build_progress", b"build_progress"]) -> None: ... + def HasField(self, field_name: typing.Literal["ability_id", b"ability_id", "build_progress", b"build_progress"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["ability_id", b"ability_id", "build_progress", b"build_progress"]) -> None: ... global___BuildItem = BuildItem -@typing_extensions.final +@typing.final class ProductionPanel(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -232,6 +233,7 @@ class ProductionPanel(google.protobuf.message.Message): """build_queue ONLY gives information about units that are being produced. Use production_queue instead to see both units being trained as well as research in the queue. """ + @property def production_queue(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BuildItem]: ... def __init__( @@ -241,12 +243,12 @@ class ProductionPanel(google.protobuf.message.Message): build_queue: collections.abc.Iterable[global___UnitInfo] | None = ..., production_queue: collections.abc.Iterable[global___BuildItem] | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["unit", b"unit"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["build_queue", b"build_queue", "production_queue", b"production_queue", "unit", b"unit"]) -> None: ... + def HasField(self, field_name: typing.Literal["unit", b"unit"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["build_queue", b"build_queue", "production_queue", b"production_queue", "unit", b"unit"]) -> None: ... global___ProductionPanel = ProductionPanel -@typing_extensions.final +@typing.final class ActionUI(google.protobuf.message.Message): """ Action @@ -294,13 +296,13 @@ class ActionUI(google.protobuf.message.Message): production_panel: global___ActionProductionPanelRemoveFromQueue | None = ..., toggle_autocast: global___ActionToggleAutocast | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["action", b"action", "cargo_panel", b"cargo_panel", "control_group", b"control_group", "multi_panel", b"multi_panel", "production_panel", b"production_panel", "select_army", b"select_army", "select_idle_worker", b"select_idle_worker", "select_larva", b"select_larva", "select_warp_gates", b"select_warp_gates", "toggle_autocast", b"toggle_autocast"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["action", b"action", "cargo_panel", b"cargo_panel", "control_group", b"control_group", "multi_panel", b"multi_panel", "production_panel", b"production_panel", "select_army", b"select_army", "select_idle_worker", b"select_idle_worker", "select_larva", b"select_larva", "select_warp_gates", b"select_warp_gates", "toggle_autocast", b"toggle_autocast"]) -> None: ... - def WhichOneof(self, oneof_group: typing_extensions.Literal["action", b"action"]) -> typing_extensions.Literal["control_group", "select_army", "select_warp_gates", "select_larva", "select_idle_worker", "multi_panel", "cargo_panel", "production_panel", "toggle_autocast"] | None: ... + def HasField(self, field_name: typing.Literal["action", b"action", "cargo_panel", b"cargo_panel", "control_group", b"control_group", "multi_panel", b"multi_panel", "production_panel", b"production_panel", "select_army", b"select_army", "select_idle_worker", b"select_idle_worker", "select_larva", b"select_larva", "select_warp_gates", b"select_warp_gates", "toggle_autocast", b"toggle_autocast"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["action", b"action", "cargo_panel", b"cargo_panel", "control_group", b"control_group", "multi_panel", b"multi_panel", "production_panel", b"production_panel", "select_army", b"select_army", "select_idle_worker", b"select_idle_worker", "select_larva", b"select_larva", "select_warp_gates", b"select_warp_gates", "toggle_autocast", b"toggle_autocast"]) -> None: ... + def WhichOneof(self, oneof_group: typing.Literal["action", b"action"]) -> typing.Literal["control_group", "select_army", "select_warp_gates", "select_larva", "select_idle_worker", "multi_panel", "cargo_panel", "production_panel", "toggle_autocast"] | None: ... global___ActionUI = ActionUI -@typing_extensions.final +@typing.final class ActionControlGroup(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -343,12 +345,12 @@ class ActionControlGroup(google.protobuf.message.Message): action: global___ActionControlGroup.ControlGroupAction.ValueType | None = ..., control_group_index: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["action", b"action", "control_group_index", b"control_group_index"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["action", b"action", "control_group_index", b"control_group_index"]) -> None: ... + def HasField(self, field_name: typing.Literal["action", b"action", "control_group_index", b"control_group_index"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["action", b"action", "control_group_index", b"control_group_index"]) -> None: ... global___ActionControlGroup = ActionControlGroup -@typing_extensions.final +@typing.final class ActionSelectArmy(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -359,12 +361,12 @@ class ActionSelectArmy(google.protobuf.message.Message): *, selection_add: builtins.bool | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["selection_add", b"selection_add"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["selection_add", b"selection_add"]) -> None: ... + def HasField(self, field_name: typing.Literal["selection_add", b"selection_add"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["selection_add", b"selection_add"]) -> None: ... global___ActionSelectArmy = ActionSelectArmy -@typing_extensions.final +@typing.final class ActionSelectWarpGates(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -375,12 +377,12 @@ class ActionSelectWarpGates(google.protobuf.message.Message): *, selection_add: builtins.bool | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["selection_add", b"selection_add"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["selection_add", b"selection_add"]) -> None: ... + def HasField(self, field_name: typing.Literal["selection_add", b"selection_add"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["selection_add", b"selection_add"]) -> None: ... global___ActionSelectWarpGates = ActionSelectWarpGates -@typing_extensions.final +@typing.final class ActionSelectLarva(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -390,7 +392,7 @@ class ActionSelectLarva(google.protobuf.message.Message): global___ActionSelectLarva = ActionSelectLarva -@typing_extensions.final +@typing.final class ActionSelectIdleWorker(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -426,12 +428,12 @@ class ActionSelectIdleWorker(google.protobuf.message.Message): *, type: global___ActionSelectIdleWorker.Type.ValueType | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["type", b"type"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["type", b"type"]) -> None: ... + def HasField(self, field_name: typing.Literal["type", b"type"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["type", b"type"]) -> None: ... global___ActionSelectIdleWorker = ActionSelectIdleWorker -@typing_extensions.final +@typing.final class ActionMultiPanel(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -470,12 +472,12 @@ class ActionMultiPanel(google.protobuf.message.Message): type: global___ActionMultiPanel.Type.ValueType | None = ..., unit_index: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["type", b"type", "unit_index", b"unit_index"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["type", b"type", "unit_index", b"unit_index"]) -> None: ... + def HasField(self, field_name: typing.Literal["type", b"type", "unit_index", b"unit_index"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["type", b"type", "unit_index", b"unit_index"]) -> None: ... global___ActionMultiPanel = ActionMultiPanel -@typing_extensions.final +@typing.final class ActionCargoPanelUnload(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -486,12 +488,12 @@ class ActionCargoPanelUnload(google.protobuf.message.Message): *, unit_index: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["unit_index", b"unit_index"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["unit_index", b"unit_index"]) -> None: ... + def HasField(self, field_name: typing.Literal["unit_index", b"unit_index"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["unit_index", b"unit_index"]) -> None: ... global___ActionCargoPanelUnload = ActionCargoPanelUnload -@typing_extensions.final +@typing.final class ActionProductionPanelRemoveFromQueue(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -502,12 +504,12 @@ class ActionProductionPanelRemoveFromQueue(google.protobuf.message.Message): *, unit_index: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["unit_index", b"unit_index"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["unit_index", b"unit_index"]) -> None: ... + def HasField(self, field_name: typing.Literal["unit_index", b"unit_index"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["unit_index", b"unit_index"]) -> None: ... global___ActionProductionPanelRemoveFromQueue = ActionProductionPanelRemoveFromQueue -@typing_extensions.final +@typing.final class ActionToggleAutocast(google.protobuf.message.Message): DESCRIPTOR: google.protobuf.descriptor.Descriptor @@ -518,7 +520,7 @@ class ActionToggleAutocast(google.protobuf.message.Message): *, ability_id: builtins.int | None = ..., ) -> None: ... - def HasField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id"]) -> builtins.bool: ... - def ClearField(self, field_name: typing_extensions.Literal["ability_id", b"ability_id"]) -> None: ... + def HasField(self, field_name: typing.Literal["ability_id", b"ability_id"]) -> builtins.bool: ... + def ClearField(self, field_name: typing.Literal["ability_id", b"ability_id"]) -> None: ... global___ActionToggleAutocast = ActionToggleAutocast