Browse Source

Merge branch 'master' of https://github.com/H-uru/korman

Conflicts:
	korman/exporter.py
pull/6/head
Adam Johnson 11 years ago
parent
commit
81b5ca888c
  1. 8
      korman/__init__.py
  2. 5
      korman/operators/op_export.py
  3. 2
      korman/operators/op_world.py
  4. 1
      korman/properties/__init__.py
  5. 1
      korman/properties/prop_object.py
  6. 12
      korman/properties/prop_world.py
  7. 4
      korman/render.py
  8. 1
      korman/ui/ui_object.py
  9. 1
      korman/ui/ui_world.py

8
korman/__init__.py

@ -20,14 +20,15 @@ from . import operators, properties, ui
bl_info = { bl_info = {
"name": "Korman", "name": "Korman",
"author": "Guild of Writers", "author": "Guild of Writers",
"blender": (2, 67, 0), # I can't be bothered to support old stuff "blender": (2, 67, 0), # I can't be bothered to support old stuff
"location": "File > Import-Export", "location": "File > Import-Export",
"description": "Exporter for Cyan Worlds' Plasma Engine", "description": "Exporter for Cyan Worlds' Plasma Engine",
"warning": "alpha", "warning": "alpha",
"category": "System", # Eventually, we will hide some of the default "category": "System", # Eventually, we will hide some of the default
# Blender panels (think materials) # Blender panels (think materials)
} }
def register(): def register():
"""Registers all Blender operators and GUI items in Korman""" """Registers all Blender operators and GUI items in Korman"""
@ -38,6 +39,7 @@ def register():
operators.register() operators.register()
properties.register() properties.register()
def unregister(): def unregister():
"""Unregisters all Blender operators and GUI items""" """Unregisters all Blender operators and GUI items"""
bpy.utils.unregister_module(__name__) bpy.utils.unregister_module(__name__)

5
korman/operators/op_export.py

@ -17,6 +17,7 @@ import bpy
import os, os.path import os, os.path
from .. import exporter from .. import exporter
class ExportOperator(bpy.types.Operator): class ExportOperator(bpy.types.Operator):
"""Exports ages for Cyan Worlds' Plasma Engine""" """Exports ages for Cyan Worlds' Plasma Engine"""
@ -28,7 +29,7 @@ class ExportOperator(bpy.types.Operator):
version = bpy.props.EnumProperty( version = bpy.props.EnumProperty(
name="Version", name="Version",
description="Version of the Plasma Engine to target", description="Version of the Plasma Engine to target",
default="pvPots", # This should be changed when moul is easier to target! default="pvPots", # This should be changed when moul is easier to target!
items=[ items=[
("pvPrime", "Ages Beyond Myst (63.11)", "Targets the original Uru (Live) game", 2), ("pvPrime", "Ages Beyond Myst (63.11)", "Targets the original Uru (Live) game", 2),
("pvPots", "Path of the Shell (63.12)", "Targets the most recent offline expansion pack", 1), ("pvPots", "Path of the Shell (63.12)", "Targets the most recent offline expansion pack", 1),
@ -91,5 +92,7 @@ def menu_cb(self, context):
if context.scene.render.engine == "PLASMA_GAME": if context.scene.render.engine == "PLASMA_GAME":
self.layout.operator_context = "INVOKE_DEFAULT" self.layout.operator_context = "INVOKE_DEFAULT"
self.layout.operator(ExportOperator.bl_idname, text="Plasma Age (.age)") self.layout.operator(ExportOperator.bl_idname, text="Plasma Age (.age)")
def register(): def register():
bpy.types.INFO_MT_file_export.append(menu_cb) bpy.types.INFO_MT_file_export.append(menu_cb)

2
korman/operators/op_world.py

@ -15,11 +15,13 @@
import bpy import bpy
class AgeOperator: class AgeOperator:
@classmethod @classmethod
def poll(cls, context): def poll(cls, context):
return context.scene.render.engine == "PLASMA_GAME" return context.scene.render.engine == "PLASMA_GAME"
class PageAddOperator(AgeOperator, bpy.types.Operator): class PageAddOperator(AgeOperator, bpy.types.Operator):
bl_idname = "world.plasma_page_add" bl_idname = "world.plasma_page_add"
bl_label = "Add Page" bl_label = "Add Page"

1
korman/properties/__init__.py

@ -18,6 +18,7 @@ import bpy
from .prop_object import * from .prop_object import *
from .prop_world import * from .prop_world import *
def register(): def register():
bpy.types.Object.plasma_object = PointerProperty(type=PlasmaObject) bpy.types.Object.plasma_object = PointerProperty(type=PlasmaObject)
bpy.types.World.plasma_age = PointerProperty(type=PlasmaAge) bpy.types.World.plasma_age = PointerProperty(type=PlasmaAge)

1
korman/properties/prop_object.py

@ -17,6 +17,7 @@ import bpy
from bpy.props import * from bpy.props import *
from PyHSPlasma import * from PyHSPlasma import *
class PlasmaObject(bpy.types.PropertyGroup): class PlasmaObject(bpy.types.PropertyGroup):
def _enabled(self, context): def _enabled(self, context):
# This makes me sad # This makes me sad

12
korman/properties/prop_world.py

@ -17,6 +17,7 @@ import bpy
from bpy.props import * from bpy.props import *
from PyHSPlasma import * from PyHSPlasma import *
class PlasmaFni(bpy.types.PropertyGroup): class PlasmaFni(bpy.types.PropertyGroup):
bl_idname = "world.plasma_fni" bl_idname = "world.plasma_fni"
@ -29,10 +30,10 @@ class PlasmaFni(bpy.types.PropertyGroup):
("linear", "Linear", "Linear Fog"), ("linear", "Linear", "Linear Fog"),
("exp2", "Exponential", "Exponential Fog"), ("exp2", "Exponential", "Exponential Fog"),
("none", "None", "Use fog from the previous age") ("none", "None", "Use fog from the previous age")
]) ])
fog_start = FloatProperty(name="Start", fog_start = FloatProperty(name="Start",
description="", description="",
default= -1500.0) default=-1500.0)
fog_end = FloatProperty(name="End", fog_end = FloatProperty(name="End",
description="", description="",
default=20000.0) default=20000.0)
@ -49,6 +50,7 @@ class PlasmaFni(bpy.types.PropertyGroup):
soft_min=100, soft_min=100,
min=1) min=1)
class PlasmaPage(bpy.types.PropertyGroup): class PlasmaPage(bpy.types.PropertyGroup):
def _check_suffix(self, context): def _check_suffix(self, context):
"""Verifies that a suffix change does not conflict""" """Verifies that a suffix change does not conflict"""
@ -95,8 +97,8 @@ class PlasmaPage(bpy.types.PropertyGroup):
update=_rename_page) update=_rename_page)
seq_suffix = IntProperty(name="ID", seq_suffix = IntProperty(name="ID",
description="A numerical ID for this page", description="A numerical ID for this page",
soft_min=0, # Negatives indicate global--advanced users only soft_min=0, # Negatives indicate global--advanced users only
default=0, # The add operator will autogen a default default=0, # The add operator will autogen a default
update=_check_suffix) update=_check_suffix)
auto_load = BoolProperty(name="Auto Load", auto_load = BoolProperty(name="Auto Load",
description="Load this page on link-in", description="Load this page on link-in",
@ -137,7 +139,7 @@ class PlasmaAge(bpy.types.PropertyGroup):
min=0) min=0)
seq_prefix = IntProperty(name="Sequence Prefix", seq_prefix = IntProperty(name="Sequence Prefix",
description="A unique numerical ID for this age", description="A unique numerical ID for this age",
soft_min=0, # Negative indicates global--advanced users only soft_min=0, # Negative indicates global--advanced users only
default=100) default=100)
pages = CollectionProperty(name="Pages", pages = CollectionProperty(name="Pages",
description="Registry pages for this age", description="Registry pages for this age",

4
korman/render.py

@ -15,6 +15,7 @@
import bpy import bpy
class PlasmaRenderEngine(bpy.types.RenderEngine): class PlasmaRenderEngine(bpy.types.RenderEngine):
bl_idname = "PLASMA_GAME" bl_idname = "PLASMA_GAME"
@ -30,6 +31,7 @@ properties_material.MATERIAL_PT_options.COMPAT_ENGINES.add("PLASMA_GAME")
properties_material.MATERIAL_PT_preview.COMPAT_ENGINES.add("PLASMA_GAME") properties_material.MATERIAL_PT_preview.COMPAT_ENGINES.add("PLASMA_GAME")
del properties_material del properties_material
@classmethod @classmethod
def _new_poll(cls, context): def _new_poll(cls, context):
"""Nifty replacement for naughty built-in Blender poll()s""" """Nifty replacement for naughty built-in Blender poll()s"""
@ -38,6 +40,8 @@ def _new_poll(cls, context):
else: else:
# Dear god you better save the old poll... # Dear god you better save the old poll...
return cls._old_poll(cls, context) return cls._old_poll(cls, context)
def _swap_poll(cls): def _swap_poll(cls):
cls._old_poll = cls.poll cls._old_poll = cls.poll
cls.poll = _new_poll cls.poll = _new_poll

1
korman/ui/ui_object.py

@ -15,6 +15,7 @@
import bpy import bpy
class ObjectButtonsPanel: class ObjectButtonsPanel:
bl_space_type = "PROPERTIES" bl_space_type = "PROPERTIES"
bl_region_type = "WINDOW" bl_region_type = "WINDOW"

1
korman/ui/ui_world.py

@ -15,6 +15,7 @@
import bpy import bpy
class AgeButtonsPanel: class AgeButtonsPanel:
bl_space_type = "PROPERTIES" bl_space_type = "PROPERTIES"
bl_region_type = "WINDOW" bl_region_type = "WINDOW"

Loading…
Cancel
Save