Create script to generate s2clientprotocol protobuf stubs (#11772)

Regenerate using mypy-protobuf 3.6
This commit is contained in:
Avasam
2024-04-22 09:05:21 -04:00
committed by GitHub
parent 0deaca4862
commit b3bfbefa7f
13 changed files with 709 additions and 510 deletions

View File

@@ -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

View File

@@ -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

View File

@@ -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)"

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -2,6 +2,7 @@
@generated by mypy-protobuf. Do not edit manually!
isort:skip_file
"""
import builtins
import sys
import typing

View File

@@ -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

View File

@@ -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

File diff suppressed because it is too large Load Diff

View File

@@ -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

View File

@@ -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

View File

@@ -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