Example #1
0
    def __init__(self, model, model_name, asset_type):
        self.model_name = model_name
        fn_p = Filename.expand_from('$MAIN_DIR/assets/{}/{}/{}.toml'.format(
            asset_type,
            model_name,
            model_name,
        ))
        fn = fn_p.to_os_specific()
        self.specs = {}
        file_exists = os.path.isfile(fn)
        if file_exists:
            with open(fn, 'r') as f:
                self.specs = toml.load(f)

        self.read_model(model, model_name, self.specs)

        if not file_exists:
            with open(fn, 'w') as f:
                toml.dump(self.specs, f)
Example #2
0
import sys
import pman.shim
from random import choice
from direct.showbase.ShowBase import ShowBase

from panda3d.core import loadPrcFile, Filename
from panda3d.core import WindowProperties
from panda3d.core import NodePath, Camera, DirectionalLight
from panda3d.core import CollisionTraverser

from road import RoadMan
from ship import Ship
from hud import Hud

loadPrcFile(Filename.expand_from('$MAIN_DIR/settings.prc'))


class GameApp(ShowBase):
    def __init__(self):
        ShowBase.__init__(self)
        pman.shim.init(self)
        #props = WindowProperties()
        #props.setCursorHidden(True)
        #props.setMouseMode(WindowProperties.M_relative)
        #base.win.requestProperties(props)
        base.disableMouse()
        self.mouse = [0, 0]
        self.setFrameRateMeter(True)
        self.win.setClearColor((0, 0, 0, 1))
        self.cTrav = CollisionTraverser()
        self.cTrav.setRespectPrevTransform(True)
Example #3
0
import sys
from enum import Enum

from panda3d.core import load_prc_file
from panda3d.core import Filename
from panda3d.core import InputDevice
from panda3d.core import ConfigVariableString
from panda3d.core import KeyboardButton
from panda3d.core import ButtonRegistry

from direct.showbase.ShowBase import ShowBase
from direct.showbase.DirectObject import DirectObject

load_prc_file(Filename.expand_from('$MAIN_DIR/keybindings.prc'))


class Methods(Enum):
    FLIGHTSTICK = InputDevice.DeviceClass.flight_stick
    GAMEPAD = InputDevice.DeviceClass.gamepad
    KEYBOARD = InputDevice.DeviceClass.keyboard


priorities = {cls.value: priority for priority, cls in enumerate(Methods)}

event_prefixes = {
    InputDevice.DeviceClass.keyboard: '',
    InputDevice.DeviceClass.gamepad: 'gamepad',
    InputDevice.DeviceClass.flight_stick: 'flight_stick',
}

UNBOUND = 'none'
Example #4
0
 def load_walk_map(self, path):
     path = Filename.expand_from('$MAIN_DIR/assets/' + path)
     if not self.walk_map.read(path):
         print("Failed to read {}".format(path))
Example #5
0
import os
import sys
import pman.shim

from direct.showbase.ShowBase import ShowBase
from panda3d.core import load_prc_file, Filename
from panda3d.core import NodePath
from panda3d.core import OrthographicLens

from debugmode import debugMove
from inputs import Inputs
from tiledpanda import importTiledMap, loadTSX


load_prc_file(
    Filename.expand_from('$MAIN_DIR/settings.prc')
)

class Creature():
    def __init__(self):
        self.node = NodePath("creature")
        self.node.reparentTo(render)

class Player(Creature):
    def __init__(self):
        Creature.__init__(self)
        self.sprite = loadTSX("data/tiled/creatures/human_normal.tsx")
        self.current_animation = self.sprite[0]
        self.node.attachNewNode(self.current_animation[0].node())
        self.node.setPos(0,0,0.2)