self.rot = rot
-class FixedStrategy:
+class ItemStrategy: pass
+
+
+class FixedStrategy(ItemStrategy):
def win_condition(self):
return True
-class StillStrategy:
+class StillStrategy(ItemStrategy):
def __init__(self, np):
self._np = np
def on_click_l(self, pos):
if self._paused: return
if self.__editing:
- messenger.send('editor-item-click-l', [self])
+ messenger.send('editor-item-click', [self])
self._start_drag_pos = pos, self._np.get_pos()
loader.load_sfx('assets/audio/sfx/grab.ogg').play()
if not self._instantiated:
def on_click_r(self, pos):
if self._paused or not self._instantiated: return
+ if self.__editing:
+ messenger.send('editor-item-click', [self])
self._prev_rot_info = pos, self._np.get_pos(), self._np.get_r()
loader.load_sfx('assets/audio/sfx/grab.ogg').play()
@property
def position(self):
- return self._
+ return self._np.get_pos()
@position.setter
def position(self, val):
self._np.set_scale(val)
self.json['model_scale'] = val
+ @property
+ def id(self):
+ if 'id' in self.json:
+ return self.json['id']
+ return None
+
+ @id.setter
+ def id(self, val):
+ self.json['id'] = val
+
+ @property
+ def strategy_json(self):
+ return self.json['strategy']
+
+ @strategy_json.setter
+ def strategy_json(self, val):
+ self.json['strategy'] = val
+
+ @property
+ def strategy_args_json(self):
+ return self.json['strategy_args']
+
+ @strategy_args_json.setter
+ def strategy_args_json(self, val):
+ self.json['strategy_args'] = val.split(' ')
+
def destroy(self):
self._np.remove_node()
taskMgr.remove(self._box_tsk)