#javascript #mysql #object #sequelize.js #temporary
Вопрос:
Привет, ребята им создавать какие-то программы, когда программа загружается, он должен загрузить все элементы из базы данных и назначить их объект, временных объектов в игры, которые не сохраняются в базе Фото: https://i.imgur.com/34y7yaQ.png и я утешаю.журнал(этот), что предмет и объект игры состоит в там, но позже это не так. когда я пытаюсь создать экземпляр.объект, он не определен, он не назначен.
Итак, как я могу заставить это работать, или, может быть, есть какой-либо метод определения объекта в модели, который не должен быть сохранен ? Заранее благодарю вас !
МОДЕЛЬ (я добавил ее как ВИРТУАЛЬНУЮ, все равно ничего)
frp.Items = frp.Database.define('Item', {
id: { type: DataTypes.INTEGER, autoIncrement: true, primaryKey: true },
Item: { type: DataTypes.STRING },
Quantity: { type: DataTypes.INTEGER, defaultValue: 1 },
Entity: { type: DataTypes.INTEGER, defaultValue: -1 },
Owner: { type: DataTypes.STRING, defaultValue: 0 },
isWeapon: { type: DataTypes.TEXT, defaultValue: false },
Ammo: { type: DataTypes.INTEGER, defaultValue: 0 },
Last_Owner: { type: DataTypes.INTEGER, defaultValue: 0 },
Position: {
type: DataTypes.TEXT, defaultValue: null,
get: function () { return JSON.parse(this.getDataValue('Position')); },
set: function (value) { this.setDataValue('Position', JSON.stringify(value)); }
},
Rotation: {
type: DataTypes.TEXT, defaultValue: null,
get: function () { return JSON.parse(this.getDataValue('Rotation')); },
set: function (value) { this.setDataValue('Rotation', JSON.stringify(value)); }
},
Dimension: { type: DataTypes.INTEGER, defaultValue: 0 },
GameObject: {
type: DataTypes.VIRTUAL,
set: function (x) {
this.setDataValue('GameObject', x);
},
}
},
{
timestamps: true,
underscrored: true,
createdAt: "Created_Date",
updatedAt: "Update_Date",
}
);
функция
frp.Items.prototype.Refresh = function () {
if (this.Entity == ItemEntities.Ground) {
const Position = this.Position;
const Rotation = this.Rotation;
console.log(Position);
this.GameObject = mp.objects.new(ItemRegistry[this.Item].hash, new mp.Vector3(Position.x, Position.y, Position.z), {
rotation: new mp.Vector3(Rotation.x, Rotation.y, Rotation.z),
alpha: 255,
dimension: this.Dimension
});
this.GameObject.Item = this.id;
console.log('Turilo game object ' this.GameObject.Item);
} else {
if (this.GameObject) {
this.GameObject.destroy();
}
}
};
Загрузка
(async () => {
frp.Items.sync();
const Items = await frp.Items.findAll();
Items.forEach((Item) => {
Item.Refresh();
});
setTimeout(async () => {
const objs = await frp.Items.findAll();
objs.forEach((obj) => {
console.log(obj.GameObject) // RETURN UNDEFINED
})
}, 5000);
frp.Main.Terminal(3, Items.length ' Items Loaded !');
})();
Комментарии:
1. Пожалуйста, опубликуйте примеры кода в виде текста. Вы можете отформатировать его с помощью «
2. У собственности нет причин исчезать. Должен быть какой-то код, изменяющий его, но для этого, вероятно, потребуется еще немного кода для отладки, если только он не доступен на сайте?
3. я вставил код