Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ jobs:
rm -rf sc2/dicts/__pycache__ sc2/dicts_old/__pycache__

- name: Upload generated dicts folder as artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: Generated_dicts
path: sc2/dicts
Expand Down Expand Up @@ -333,7 +333,7 @@ jobs:
echo "Upload htmlcov folder because it was mounted in container, so it will be available in host machine"

- name: Upload htmlcov/ folder as artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: Coverage_report
path: htmlcov
Expand Down
2 changes: 1 addition & 1 deletion data/data.json

Large diffs are not rendered by default.

6 changes: 4 additions & 2 deletions sc2/client.py
Original file line number Diff line number Diff line change
Expand Up @@ -432,7 +432,7 @@ async def move_camera(self, position: Unit | Units | Point2 | Point3) -> None:
)
)

async def obs_move_camera(self, position: Unit | Units | Point2 | Point3) -> None:
async def obs_move_camera(self, position: Unit | Units | Point2 | Point3, distance: float = 0) -> None:
"""Moves observer camera to the target position. Only works when observing (e.g. watching the replay).

:param position:"""
Expand All @@ -444,7 +444,9 @@ async def obs_move_camera(self, position: Unit | Units | Point2 | Point3) -> Non
await self._execute(
obs_action=sc_pb.RequestObserverAction(
actions=[
sc_pb.ObserverAction(camera_move=sc_pb.ActionObserverCameraMove(world_pos=position.as_Point2D))
sc_pb.ObserverAction(
camera_move=sc_pb.ActionObserverCameraMove(world_pos=position.as_Point2D, distance=distance)
)
]
)
)
Expand Down
3 changes: 2 additions & 1 deletion sc2/dicts/generic_redirect_abilities.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
# ANY CHANGE WILL BE OVERWRITTEN

from sc2.ids.ability_id import AbilityId

# from sc2.ids.buff_id import BuffId
# from sc2.ids.effect_id import EffectId

Expand Down Expand Up @@ -118,6 +119,7 @@
AbilityId.CANCEL_STASISTRAP: AbilityId.CANCEL,
AbilityId.CANCEL_VOIDRAYPRISMATICALIGNMENT: AbilityId.CANCEL,
AbilityId.CHANNELSNIPE_CANCEL: AbilityId.CANCEL,
AbilityId.COMMANDCENTERTRANSPORT_COMMANDCENTERTRANSPORT: AbilityId.LOAD,
AbilityId.CYBERNETICSCORERESEARCH_PROTOSSAIRARMORLEVEL1: AbilityId.RESEARCH_PROTOSSAIRARMOR,
AbilityId.CYBERNETICSCORERESEARCH_PROTOSSAIRARMORLEVEL2: AbilityId.RESEARCH_PROTOSSAIRARMOR,
AbilityId.CYBERNETICSCORERESEARCH_PROTOSSAIRARMORLEVEL3: AbilityId.RESEARCH_PROTOSSAIRARMOR,
Expand Down Expand Up @@ -204,7 +206,6 @@
AbilityId.MORPHTOSWARMHOSTBURROWEDMP_CANCEL: AbilityId.CANCEL,
AbilityId.MOVE_BATTLECRUISER: AbilityId.MOVE,
AbilityId.MOVE_MOVE: AbilityId.MOVE,
AbilityId.NULL_NULL: AbilityId.CANCEL,
AbilityId.PATROL_BATTLECRUISER: AbilityId.PATROL,
AbilityId.PATROL_PATROL: AbilityId.PATROL,
AbilityId.PHASINGMODE_CANCEL: AbilityId.CANCEL,
Expand Down
4 changes: 3 additions & 1 deletion sc2/dicts/unit_abilities.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
# THIS FILE WAS AUTOMATICALLY GENERATED BY "generate_dicts_from_data_json.py" DO NOT CHANGE MANUALLY!
# ANY CHANGE WILL BE OVERWRITTEN

from sc2.ids.unit_typeid import UnitTypeId
from sc2.ids.ability_id import AbilityId
from sc2.ids.unit_typeid import UnitTypeId

# from sc2.ids.buff_id import BuffId
# from sc2.ids.effect_id import EffectId

Expand Down Expand Up @@ -528,6 +529,7 @@
AbilityId.ATTACK_ATTACK,
AbilityId.BURROWDOWN_HYDRALISK,
AbilityId.HOLDPOSITION_HOLD,
AbilityId.HYDRALISKFRENZY_HYDRALISKFRENZY,
AbilityId.MORPH_LURKER,
AbilityId.MOVE_MOVE,
AbilityId.PATROL_PATROL,
Expand Down
8 changes: 4 additions & 4 deletions sc2/dicts/unit_research_abilities.py
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
# THIS FILE WAS AUTOMATICALLY GENERATED BY "generate_dicts_from_data_json.py" DO NOT CHANGE MANUALLY!
# ANY CHANGE WILL BE OVERWRITTEN

from sc2.ids.unit_typeid import UnitTypeId
from sc2.ids.ability_id import AbilityId
from sc2.ids.upgrade_id import UpgradeId
# from sc2.ids.buff_id import BuffId
# from sc2.ids.effect_id import EffectId

from typing import Union

from sc2.ids.ability_id import AbilityId
from sc2.ids.unit_typeid import UnitTypeId
from sc2.ids.upgrade_id import UpgradeId

RESEARCH_INFO: dict[UnitTypeId, dict[UpgradeId, dict[str, Union[AbilityId, bool, UnitTypeId, UpgradeId]]]] = {
UnitTypeId.ARMORY: {
UpgradeId.TERRANSHIPWEAPONSLEVEL1: {"ability": AbilityId.ARMORYRESEARCH_TERRANSHIPWEAPONSLEVEL1},
Expand Down
1 change: 1 addition & 0 deletions sc2/dicts/unit_tech_alias.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
# ANY CHANGE WILL BE OVERWRITTEN

from sc2.ids.unit_typeid import UnitTypeId

# from sc2.ids.buff_id import BuffId
# from sc2.ids.effect_id import EffectId

Expand Down
6 changes: 3 additions & 3 deletions sc2/dicts/unit_train_build_abilities.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
# THIS FILE WAS AUTOMATICALLY GENERATED BY "generate_dicts_from_data_json.py" DO NOT CHANGE MANUALLY!
# ANY CHANGE WILL BE OVERWRITTEN

from sc2.ids.unit_typeid import UnitTypeId
from sc2.ids.ability_id import AbilityId
# from sc2.ids.buff_id import BuffId
# from sc2.ids.effect_id import EffectId

from typing import Union

from sc2.ids.ability_id import AbilityId
from sc2.ids.unit_typeid import UnitTypeId

TRAIN_INFO: dict[UnitTypeId, dict[UnitTypeId, dict[str, Union[AbilityId, bool, UnitTypeId]]]] = {
UnitTypeId.BARRACKS: {
UnitTypeId.GHOST: {
Expand Down
3 changes: 2 additions & 1 deletion sc2/dicts/unit_trained_from.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
# ANY CHANGE WILL BE OVERWRITTEN

from sc2.ids.unit_typeid import UnitTypeId

# from sc2.ids.buff_id import BuffId
# from sc2.ids.effect_id import EffectId

Expand All @@ -23,7 +24,7 @@
UnitTypeId.COLOSSUS: {UnitTypeId.ROBOTICSFACILITY},
UnitTypeId.COMMANDCENTER: {UnitTypeId.SCV},
UnitTypeId.CORRUPTOR: {UnitTypeId.LARVA},
UnitTypeId.CREEPTUMOR: {UnitTypeId.CREEPTUMOR, UnitTypeId.CREEPTUMORBURROWED, UnitTypeId.QUEEN},
UnitTypeId.CREEPTUMOR: {UnitTypeId.CREEPTUMORBURROWED, UnitTypeId.QUEEN},
UnitTypeId.CREEPTUMORQUEEN: {UnitTypeId.QUEEN},
UnitTypeId.CYBERNETICSCORE: {UnitTypeId.PROBE},
UnitTypeId.CYCLONE: {UnitTypeId.FACTORY},
Expand Down
1 change: 1 addition & 0 deletions sc2/dicts/unit_unit_alias.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
# ANY CHANGE WILL BE OVERWRITTEN

from sc2.ids.unit_typeid import UnitTypeId

# from sc2.ids.buff_id import BuffId
# from sc2.ids.effect_id import EffectId

Expand Down
1 change: 1 addition & 0 deletions sc2/dicts/upgrade_researched_from.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@

from sc2.ids.unit_typeid import UnitTypeId
from sc2.ids.upgrade_id import UpgradeId

# from sc2.ids.buff_id import BuffId
# from sc2.ids.effect_id import EffectId

Expand Down
3 changes: 3 additions & 0 deletions sc2/generate_ids.py
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,9 @@ def parse_data(self, data) -> dict[str, Any]:
key = v["buttonname"]
remapid = v.get("remapid")

if key == "" and v["index"] == 0:
key = v["name"]

if (not key) and (remapid is None):
assert v["buttonname"] == ""
continue
Expand Down
1 change: 1 addition & 0 deletions sc2/ids/__init__.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# pyre-ignore-all-errors[14]
from __future__ import annotations

# DO NOT EDIT!
# This file was automatically generated by "generate_ids.py"

Expand Down
Loading
Loading