mirror of
https://github.com/lubosz/overte.git
synced 2025-04-19 17:03:43 +02:00
Added sitting points to modelItem
This commit is contained in:
parent
c660986480
commit
1d7d970ff6
2 changed files with 22 additions and 3 deletions
|
@ -886,7 +886,19 @@ QScriptValue ModelItemProperties::copyToScriptValue(QScriptEngine* engine) const
|
|||
properties.setProperty("shouldDie", _shouldDie);
|
||||
|
||||
properties.setProperty("modelURL", _modelURL);
|
||||
|
||||
|
||||
|
||||
QScriptValue sittingPoints = engine->newObject();
|
||||
for (int i = 0; i < _sittingPoints.size(); ++i) {
|
||||
QScriptValue sittingPoint = engine->newObject();
|
||||
sittingPoint.setProperty("name", _sittingPoints[i].name);
|
||||
sittingPoint.setProperty("position", vec3toScriptValue(engine, _sittingPoints[i].position));
|
||||
sittingPoint.setProperty("rotation", quatToScriptValue(engine, _sittingPoints[i].rotation));
|
||||
sittingPoints.setProperty(i, sittingPoint);
|
||||
}
|
||||
sittingPoints.setProperty("length", _sittingPoints.size());
|
||||
properties.setProperty("sittingPoints", sittingPoints);
|
||||
|
||||
QScriptValue modelRotation = quatToScriptValue(engine, _modelRotation);
|
||||
properties.setProperty("modelRotation", modelRotation);
|
||||
|
||||
|
@ -971,7 +983,7 @@ void ModelItemProperties::copyFromScriptValue(const QScriptValue &object) {
|
|||
_modelURLChanged = true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
QScriptValue modelRotation = object.property("modelRotation");
|
||||
if (modelRotation.isValid()) {
|
||||
QScriptValue x = modelRotation.property("x");
|
||||
|
@ -1125,6 +1137,7 @@ void ModelItemProperties::copyFromModelItem(const ModelItem& modelItem) {
|
|||
_animationFrameIndex = modelItem.getAnimationFrameIndex();
|
||||
_animationFPS = modelItem.getAnimationFPS();
|
||||
_glowLevel = modelItem.getGlowLevel();
|
||||
_sittingPoints = modelItem.getSittingPoints();
|
||||
|
||||
_id = modelItem.getID();
|
||||
_idSet = true;
|
||||
|
|
|
@ -23,6 +23,7 @@
|
|||
#include <CollisionInfo.h>
|
||||
#include <SharedUtil.h>
|
||||
#include <OctreePacketData.h>
|
||||
#include <FBXReader.h>
|
||||
|
||||
|
||||
class ModelItem;
|
||||
|
@ -124,7 +125,8 @@ private:
|
|||
float _animationFrameIndex;
|
||||
float _animationFPS;
|
||||
float _glowLevel;
|
||||
|
||||
QVector<SittingPoint> _sittingPoints;
|
||||
|
||||
uint32_t _id;
|
||||
bool _idSet;
|
||||
quint64 _lastEdited;
|
||||
|
@ -213,6 +215,7 @@ public:
|
|||
bool hasAnimation() const { return !_animationURL.isEmpty(); }
|
||||
const QString& getAnimationURL() const { return _animationURL; }
|
||||
float getGlowLevel() const { return _glowLevel; }
|
||||
QVector<SittingPoint> getSittingPoints() const { return _sittingPoints; }
|
||||
|
||||
ModelItemID getModelItemID() const { return ModelItemID(getID(), getCreatorTokenID(), getID() != UNKNOWN_MODEL_ID); }
|
||||
ModelItemProperties getProperties() const;
|
||||
|
@ -256,6 +259,7 @@ public:
|
|||
void setAnimationIsPlaying(bool value) { _animationIsPlaying = value; }
|
||||
void setAnimationFPS(float value) { _animationFPS = value; }
|
||||
void setGlowLevel(float glowLevel) { _glowLevel = glowLevel; }
|
||||
void setSittingPoints(QVector<SittingPoint> sittingPoints) { _sittingPoints = sittingPoints; }
|
||||
|
||||
void setProperties(const ModelItemProperties& properties);
|
||||
|
||||
|
@ -302,6 +306,8 @@ protected:
|
|||
QString _modelURL;
|
||||
glm::quat _modelRotation;
|
||||
|
||||
QVector<SittingPoint> _sittingPoints;
|
||||
|
||||
float _glowLevel;
|
||||
|
||||
uint32_t _creatorTokenID;
|
||||
|
|
Loading…
Reference in a new issue