Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import byml
- from collections import OrderedDict
- #This is probably really messy and terrible but IDC
- fieldTypes = OrderedDict({
- "DropId": byml.IntegerNode,
- "FloatParameter0": byml.FloatNode,
- "FloatParameter1": byml.FloatNode,
- "FloatParameter2": byml.FloatNode,
- "FloatParameter3": byml.FloatNode,
- "FloatParameter4": byml.FloatNode,
- "HalfDrawFPSDistance": byml.FloatNode,
- "Id": byml.StringNode,
- "IsAbleToBeHalfDrawFPS": byml.BooleanNode,
- "IsAbleToBeVsCulled": byml.BooleanNode,
- "IsLinkDest": byml.BooleanNode,
- "IsObjPaintForResult": byml.BooleanNode,
- "LayerConfigName": byml.StringNode,
- "Links": byml.DictNode,
- "ModelName": byml.NoneNode, #TODO: Find an instance where it isn't :\
- "PaintDefault": byml.BooleanNode,
- "PaintInvertible": byml.BooleanNode,
- "PaintRatePerBullet": byml.FloatNode,
- "Parameter0": byml.IntegerNode,
- "Parameter1": byml.IntegerNode,
- "Parameter2": byml.IntegerNode,
- "Parameter3": byml.IntegerNode,
- "Parameter4": byml.IntegerNode,
- "Rotate": byml.DictNode, #X, Y, Z
- "Scale": byml.DictNode, #X, Y, Z
- "Switch0": byml.IntegerNode,
- "Switch1": byml.IntegerNode,
- "Team": byml.IntegerNode,
- "Translate": byml.DictNode, #X, Y, Z
- "UnitConfigName": byml.StringNode,
- "X": byml.FloatNode,
- "Y": byml.FloatNode,
- "Z": byml.FloatNode})
- def StdObject(name):
- ret = OrderedDict()
- ret["DropId"] = fieldTypes["DropId"](-1)
- ret["FloatParameter0"] = fieldTypes["FloatParameter0"](-99.0)
- ret["FloatParameter1"] = fieldTypes["FloatParameter1"](-99.0)
- ret["FloatParameter2"] = fieldTypes["FloatParameter2"](-99.0)
- ret["FloatParameter3"] = fieldTypes["FloatParameter3"](-99.0)
- ret["FloatParameter4"] = fieldTypes["FloatParameter4"](-99.0)
- ret["HalfDrawFPSDistance"] = fieldTypes["HalfDrawFPSDistance"](-1.0)
- ret["Id"] = fieldTypes["Id"]("obj01")
- ret["IsAbleToBeHalfDrawFPS"] = fieldTypes["IsAbleToBeHalfDrawFPS"](False)
- ret["IsAbleToBeVsCulled"] = fieldTypes["IsAbleToBeVsCulled"](True)
- ret["IsLinkDest"] = fieldTypes["IsLinkDest"](False)
- ret["IsObjPaintForResult"] = fieldTypes["IsObjPaintForResult"](False)
- ret["LayerConfigName"] = fieldTypes["LayerConfigName"]("Cmn")
- ret["Links"] = fieldTypes["Links"](OrderedDict())
- ret["ModelName"] = fieldTypes["ModelName"](None)
- ret["PaintDefault"] = fieldTypes["PaintDefault"](False)
- ret["PaintInvertible"] = fieldTypes["PaintInvertible"](False)
- ret["Parameter0"] = fieldTypes["Parameter0"](-99)
- ret["Parameter1"] = fieldTypes["Parameter0"](-99)
- ret["Parameter2"] = fieldTypes["Parameter0"](-99)
- ret["Parameter3"] = fieldTypes["Parameter0"](-99)
- ret["Parameter4"] = fieldTypes["Parameter0"](-99)
- ret["Rotate"] = fieldTypes["Rotate"](OrderedDict({
- "X": fieldTypes["X"](0.0),
- "Y": fieldTypes["Y"](0.0),
- "Z": fieldTypes["Z"](0.0)
- }))
- ret["Scale"] = fieldTypes["Scale"](OrderedDict({
- "X": fieldTypes["X"](1.0),
- "Y": fieldTypes["Y"](1.0),
- "Z": fieldTypes["Z"](1.0)
- }))
- ret["Switch0"] = fieldTypes["Switch0"](0)
- ret["Switch1"] = fieldTypes["Switch1"](0)
- ret["Team"] = fieldTypes["Team"](2) #0 is TeamA, 1 is TeamB, 2 is Neutral
- ret["Translate"] = fieldTypes["Translate"](OrderedDict({
- "X": fieldTypes["X"](0.0),
- "Y": fieldTypes["Y"](0.0),
- "Z": fieldTypes["Z"](0.0)
- }))
- ret["UnitConfigName"] = fieldTypes["UnitConfigName"](name)
- return byml.DictNode(ret)
- objects = {
- "StartPos": StdObject("StartPos")
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement