void ComponentPhysicsGeom::load(const PropertyBag &data) { resetMembers(); desiredHeight = data.getFloat("height"); collisionRadius = data.getFloat("radius"); // Create as physics geometry if(geom){dGeomDestroy(geom);} geom=0; createGeom(data.getString("physicsGeometryType")); // Set initial position { vec3 position; if(data.get("position", position)) // optional tag { setPosition(position); } } // Declare the initial state getParentBlackBoard().relayMessage(MessagePositionHasBeenSet(getPosition())); getParentBlackBoard().relayMessage(MessageOrientationHasBeenSet(getOrientation())); getParentBlackBoard().relayMessage(MessageRequestSetHeight(desiredHeight)); }
void ComponentSpinAround::load(const PropertyBag &data) { resetMembers(); rotationSpeed = data.getFloat("rotationSpeed"); bounceHeight = data.getFloat("bounceHeight"); bounceSpeed = data.getFloat("bounceSpeed"); }
void ComponentHealth::load(const PropertyBag &data) { resetMembers(); health = data.getInt("health"); maxHealth = data.getInt("maxHealth"); damageToPowerRatio = data.getFloat("damageToPowerRatio"); willResurrectAfterCountDown = data.getBool("willResurrectAfterCountDown"); timeUntilResurrection = data.getFloat("timeUntilResurrection"); data.get("displayPower", displayPower); // optional tag }
void ComponentExplodeAfterTimeout::load(const PropertyBag &data) { resetMembers(); timeleft = data.getFloat("timeout"); baseDamage = data.getInt("baseDamage"); soundFileName = data.getFileName("soundFileName"); particlesFileName = data.getFileName("particlesFileName"); }
void ComponentGate::load(const PropertyBag &data) { resetMembers(); state = ("a" == toLowerCase(data.getString("initialState"))) ? STATE_A : STATE_B; positionA = data.getVec3("positionA"); positionB = data.getVec3("positionB"); timeToTransitionAB = data.getFloat("timeToTransitionAB"); timeToTransitionBA = data.getFloat("timeToTransitionBA"); }
void Font::setup(const PropertyBag &data) { fontSize.clear(); fontSize[Font::SizeHuge] = data.getFloat("huge"); fontSize[Font::SizeLarge] = data.getFloat("large"); fontSize[Font::SizeNormal] = data.getFloat("normal"); fontSize[Font::SizeSmall] = data.getFloat("small"); spacing = data.getFloat("spacing"); lineHeight = data.getFloat("lineHeight"); loadFontImage(data.getFileName("image")); }
void ComponentMovement::load(const PropertyBag &data) { topSpeed = data.getFloat("topSpeed"); maxForce = (dReal)data.getFloat("maxForce"); createMotorJoints(); }
void ComponentObjectApproachable::load( const PropertyBag &data ) { resetMembers(); thresholdTrigger = data.getFloat("thresholdTrigger"); thresholdRelease = data.getFloat("thresholdRelease"); }
void ComponentUserControllable::load( const PropertyBag &data ) { mouseSensitivity = data.getFloat("mouseSensitivity"); }