Commit | Line | Data |
---|---|---|
ea38777c | 1 | from panda3d.core import TransformState |
c991401b | 2 | from panda3d.bullet import BulletCylinderShape, YUp, ZUp |
4586cbf6 | 3 | from pmachines.items.item import Item |
ea38777c FC |
4 | |
5 | ||
6 | class TeeterTooter(Item): | |
7 | ||
3466af49 FC |
8 | def __init__(self, world, plane_node, cb_inst, curr_bottom, repos, json, model_scale=1, mass=1, pos=(0, 0, 0), r=0, count=0, restitution=.5, friction=.5): |
9 | super().__init__(world, plane_node, cb_inst, curr_bottom, repos, 'assets/models/bam/teeter_tooter/teeter_tooter.bam', json, model_scale=.5, exp_num_contacts=2, mass=mass, pos=pos, r=r, count=count, restitution=restitution, friction=friction) | |
ea38777c | 10 | |
80d579b1 FC |
11 | def _set_shape(self, apply_scale=True): |
12 | scale = self._model_scale if apply_scale else 1 | |
ea38777c FC |
13 | self.node.add_shape( |
14 | BulletCylinderShape(.1, 1.6, YUp), | |
80d579b1 | 15 | TransformState.makePos((0, 0, scale * .36))) |
ea38777c FC |
16 | self.node.add_shape( |
17 | BulletCylinderShape(.1, .7, ZUp), | |
80d579b1 | 18 | TransformState.makePos((0, scale * .8, scale * -.1))) |
ea38777c FC |
19 | self.node.add_shape( |
20 | BulletCylinderShape(.1, .7, ZUp), | |
80d579b1 | 21 | TransformState.makePos((0, scale * -.8, scale * -.1))) |