Skip to content

Commit

Permalink
refactor(*): linting fixes and rename
Browse files Browse the repository at this point in the history
  • Loading branch information
lmichaelis committed Mar 3, 2024
1 parent 09999ec commit ee3d93e
Show file tree
Hide file tree
Showing 34 changed files with 286 additions and 251 deletions.
4 changes: 4 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -71,8 +71,12 @@ line-length = 120
[tool.ruff.lint]
select = ["ALL"]
ignore = [
"D",
"D211",
"D213",
"N815",
"ANN101",
"ANN401",
"COM812",
"ISC001",
]
Expand Down
88 changes: 44 additions & 44 deletions src/zenkit/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -121,51 +121,51 @@
from zenkit._core import Quat
from zenkit._core import Vec2f
from zenkit._core import Vec3f
from zenkit.csl import CutsceneBlock
from zenkit.csl import CutsceneLibrary
from zenkit.csl import CutsceneMessage
from zenkit.cutscene_library import CutsceneBlock
from zenkit.cutscene_library import CutsceneLibrary
from zenkit.cutscene_library import CutsceneMessage
from zenkit.daedalus_script import DaedalusDataType
from zenkit.daedalus_script import DaedalusInstruction
from zenkit.daedalus_script import DaedalusOpcode
from zenkit.daedalus_script import DaedalusScript
from zenkit.daedalus_script import DaedalusSymbol
from zenkit.daedalus_vm import DaedalusType
from zenkit.daedalus_vm import DaedalusVm
from zenkit.fnt import Font
from zenkit.fnt import FontGlyph
from zenkit.log import LogLevel
from zenkit.log import set_logger
from zenkit.log import set_logger_default
from zenkit.man import AnimationSample
from zenkit.man import ModelAnimation
from zenkit.mat import AlphaFunction
from zenkit.mat import AnimationMapping
from zenkit.mat import Material
from zenkit.mat import MaterialGroup
from zenkit.mat import WaveMode
from zenkit.mat import WaveSpeed
from zenkit.mdh import ModelHierarchy
from zenkit.mdh import ModelHierarchyNode
from zenkit.mdl import Model
from zenkit.mdm import ModelMesh
from zenkit.mmb import MorphAnimation
from zenkit.mmb import MorphMesh
from zenkit.mmb import MorphSource
from zenkit.mrm import MeshEdge
from zenkit.mrm import MeshPlane
from zenkit.mrm import MeshTriangle
from zenkit.mrm import MeshTriangleEdge
from zenkit.mrm import MeshWedge
from zenkit.mrm import MultiResolutionMesh
from zenkit.mrm import SubMesh
from zenkit.msh import Mesh
from zenkit.ssm import SoftSkinMesh
from zenkit.ssm import SoftSkinWedgeNormal
from zenkit.ssm import SoftSkinWeight
from zenkit.font import Font
from zenkit.font import FontGlyph
from zenkit.logger import LogLevel
from zenkit.logger import set_logger
from zenkit.logger import set_logger_default
from zenkit.material import AlphaFunction
from zenkit.material import AnimationMapping
from zenkit.material import Material
from zenkit.material import MaterialGroup
from zenkit.material import WaveMode
from zenkit.material import WaveSpeed
from zenkit.mesh import Mesh
from zenkit.model import Model
from zenkit.model_animation import AnimationSample
from zenkit.model_animation import ModelAnimation
from zenkit.model_hierarchy import ModelHierarchy
from zenkit.model_hierarchy import ModelHierarchyNode
from zenkit.model_mesh import ModelMesh
from zenkit.morph_mesh import MorphAnimation
from zenkit.morph_mesh import MorphMesh
from zenkit.morph_mesh import MorphSource
from zenkit.multi_resolution_mesh import MeshEdge
from zenkit.multi_resolution_mesh import MeshPlane
from zenkit.multi_resolution_mesh import MeshTriangle
from zenkit.multi_resolution_mesh import MeshTriangleEdge
from zenkit.multi_resolution_mesh import MeshWedge
from zenkit.multi_resolution_mesh import MultiResolutionMesh
from zenkit.multi_resolution_mesh import SubMesh
from zenkit.soft_skin_mesh import SoftSkinMesh
from zenkit.soft_skin_mesh import SoftSkinWedgeNormal
from zenkit.soft_skin_mesh import SoftSkinWeight
from zenkit.stream import Read
from zenkit.tex import Texture
from zenkit.tex import TextureBuilder
from zenkit.tex import TextureFormat
from zenkit.texture import Texture
from zenkit.texture import TextureBuilder
from zenkit.texture import TextureFormat
from zenkit.vfs import Vfs
from zenkit.vfs import VfsNode
from zenkit.vfs import VfsOverwriteBehavior
Expand Down Expand Up @@ -225,11 +225,11 @@
from zenkit.vob.zone import ZoneFarPlane
from zenkit.vob.zone import ZoneFog
from zenkit.vob.zone import ZoneMusic
from zenkit.world.bsptree import BspNode
from zenkit.world.bsptree import BspSector
from zenkit.world.bsptree import BspTree
from zenkit.world.bsptree import BspTreeType
from zenkit.world.waynet import WayEdge
from zenkit.world.waynet import WayNet
from zenkit.world.waynet import WayPoint
from zenkit.world.bsp_tree import BspNode
from zenkit.world.bsp_tree import BspSector
from zenkit.world.bsp_tree import BspTree
from zenkit.world.bsp_tree import BspTreeType
from zenkit.world.way_net import WayEdge
from zenkit.world.way_net import WayNet
from zenkit.world.way_net import WayPoint
from zenkit.world.world import World
24 changes: 14 additions & 10 deletions src/zenkit/_core.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,12 @@
from ctypes import c_uint32
from ctypes import c_void_p
from datetime import datetime
from datetime import timezone
from os import PathLike
from pathlib import Path
from typing import TYPE_CHECKING
from typing import Any
from typing import ClassVar
from typing import Final
from typing import Union

Expand All @@ -47,7 +49,7 @@

class Date(Structure):
_pack_ = 1
_fields_ = [
_fields_: ClassVar[tuple[str, Any]] = [
("year", c_uint32),
("month", c_uint16),
("day", c_uint16),
Expand All @@ -64,14 +66,16 @@ def to_datetime(self) -> datetime:
hour=self.hour,
minute=self.minute,
second=self.second,
tzinfo=timezone.utc
)

def __repr__(self) -> str:
return f"Date(year={self.year}, month={self.month}, day={self.day}, hour={self.hour}, minute={self.minute}, second={self.second})"
return (f"Date(year={self.year}, month={self.month}, day={self.day}, "
f"hour={self.hour}, minute={self.minute}, second={self.second})")


class Vec2f(Structure):
_fields_ = [
_fields_: ClassVar[tuple[str, Any]] = [
("x", c_float),
("y", c_float),
]
Expand All @@ -81,7 +85,7 @@ def __repr__(self) -> str:


class Vec3f(Structure):
_fields_ = [
_fields_: ClassVar[tuple[str, Any]] = [
("x", c_float),
("y", c_float),
("z", c_float),
Expand All @@ -92,7 +96,7 @@ def __repr__(self) -> str:


class Vec4f(Structure):
_fields_ = [
_fields_: ClassVar[tuple[str, Any]] = [
("x", c_float),
("y", c_float),
("z", c_float),
Expand All @@ -104,7 +108,7 @@ def __repr__(self) -> str:


class Quat(Structure):
_fields_ = [
_fields_: ClassVar[tuple[str, Any]] = [
("x", c_float),
("y", c_float),
("z", c_float),
Expand All @@ -116,7 +120,7 @@ def __repr__(self) -> str:


class Mat3x3(Structure):
_fields_ = [
_fields_: ClassVar[tuple[str, Any]] = [
("_columns", Vec3f * 3),
]

Expand All @@ -125,7 +129,7 @@ def columns(self) -> tuple[Vec3f, Vec3f, Vec3f]:


class Mat4x4(Structure):
_fields_ = [
_fields_: ClassVar[tuple[str, Any]] = [
("columns", Vec4f * 4),
]

Expand All @@ -134,7 +138,7 @@ def columns(self) -> tuple[Vec4f, Vec4f, Vec4f, Vec4f]:


class AxisAlignedBoundingBox(Structure):
_fields_ = [
_fields_: ClassVar[tuple[str, Any]] = [
("_min", Vec3f),
("_max", Vec3f),
]
Expand Down Expand Up @@ -190,7 +194,7 @@ def to_aabb(self) -> AxisAlignedBoundingBox:


class Color(Structure):
_fields_ = [
_fields_: ClassVar[tuple[str, Any]] = [
("_r", c_uint8),
("_g", c_uint8),
("_b", c_uint8),
Expand Down
3 changes: 2 additions & 1 deletion src/zenkit/_native.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@ def value(self) -> str:
value = super().value

if value is None:
raise ValueError("Failed to load native string")
error = "Failed to load native string"
raise ValueError(error)

return value.decode("utf-8")

Expand Down
File renamed without changes.
10 changes: 5 additions & 5 deletions src/zenkit/daedalus/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,23 +40,23 @@ class DaedalusInstanceType(IntEnum):
class DaedalusInstance:
__slots__ = ("_handle",)

def __init__(self, **kwargs: Any):
def __init__(self, **kwargs: Any) -> None:
self._handle = None

if "_handle" in kwargs:
self._handle = kwargs.pop("_handle")

@staticmethod
def from_native(handle: c_void_p) -> "DaedalusInstance":
def from_native(handle: c_void_p | None) -> "DaedalusInstance | None":
from zenkit.daedalus import _INSTANCES

if handle is None or handle.value is None:
if handle is None or handle.value is None or handle.value == 0:
return None

DLL.ZkDaedalusInstance_getType.restype = c_int
type = DaedalusInstanceType(DLL.ZkDaedalusInstance_getType(handle))
typ = DaedalusInstanceType(DLL.ZkDaedalusInstance_getType(handle))

return _INSTANCES.get(type, DaedalusInstance)(_handle=handle)
return _INSTANCES.get(typ, DaedalusInstance)(_handle=handle)

@property
def handle(self) -> c_void_p:
Expand Down
6 changes: 4 additions & 2 deletions src/zenkit/daedalus/effect_base.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@
from zenkit._native import ZkString
from zenkit.daedalus.base import DaedalusInstance

_USER_STRING_COUNT = 5


class EffectBaseInstance(DaedalusInstance):
def __init__(self, **kwargs: Any) -> None:
Expand Down Expand Up @@ -420,13 +422,13 @@ def em_fx_coll_dyn_perc_s(self, value: str) -> None:
DLL.ZkEffectBaseInstance_setEmFxCollDynPercS(self._handle, value.encode("utf-8"))

def get_user_string(self, i: int) -> str:
if i < 0 or i >= 5:
if i < 0 or i >= _USER_STRING_COUNT:
raise IndexError(i)

DLL.ZkEffectBaseInstance_getUserString.restype = ZkString
return DLL.ZkEffectBaseInstance_getUserString(self._handle, c_size_t(i)).value

def set_user_string(self, i: int, val: str) -> None:
if i < 0 or i >= 5:
if i < 0 or i >= _USER_STRING_COUNT:
raise IndexError(i)
return DLL.ZkEffectBaseInstance_setUserString(self._handle, c_size_t(i), val.encode("utf-8"))
6 changes: 4 additions & 2 deletions src/zenkit/daedalus/fightai.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@
from zenkit._core import DLL
from zenkit.daedalus.base import DaedalusInstance

_FAI_MOVE_COUNT = 5


class FightAiMove(IntEnum):
NOP = (0,)
Expand Down Expand Up @@ -35,13 +37,13 @@ def __init__(self, **kwargs: Any) -> None:
super().__init__(**kwargs)

def get_move(self, i: int) -> FightAiMove:
if i < 0 or i >= 5:
if i < 0 or i >= _FAI_MOVE_COUNT:
raise IndexError(i)

DLL.ZkFightAiInstance_getMove.restype = c_int
return FightAiMove(DLL.ZkFightAiInstance_getMove(self._handle, c_size_t(i)))

def set_user_string(self, i: int, val: FightAiMove) -> None:
if i < 0 or i >= 5:
if i < 0 or i >= _FAI_MOVE_COUNT:
raise IndexError(i)
return DLL.ZkFightAiInstance_setMove(self._handle, c_size_t(i), val.value)
Loading

0 comments on commit ee3d93e

Please sign in to comment.