Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions dGame/Entity.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1499,7 +1499,7 @@ void Entity::RequestActivityExit(Entity* sender, LWOOBJID player, bool canceled)

CppScripts::Script* const Entity::GetScript() {
auto* scriptComponent = GetComponent<ScriptComponent>();
auto* script = scriptComponent ? scriptComponent->GetScript() : CppScripts::GetInvalidScript();
auto* script = scriptComponent ? scriptComponent->GetScript() : &CppScripts::GetInvalidScript();
DluAssert(script != nullptr);
return script;
}
Expand Down Expand Up @@ -2175,7 +2175,7 @@ void Entity::SetRespawnRot(const NiQuaternion& rotation) {

int32_t Entity::GetCollisionGroup() const {
for (const auto* component : m_Components | std::views::values) {
auto* compToCheck = dynamic_cast<const PhysicsComponent*>(component);
auto* compToCheck = dynamic_cast<const PhysicsComponent*>(component);
if (compToCheck) {
return compToCheck->GetCollisionGroup();
}
Expand Down
14 changes: 4 additions & 10 deletions dGame/dComponents/InventoryComponent.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -938,11 +938,8 @@ void InventoryComponent::EquipScripts(Item* equippedItem) {
if (scriptComponentID > -1) {
CDScriptComponentTable* scriptCompTable = CDClientManager::GetTable<CDScriptComponentTable>();
CDScriptComponent scriptCompData = scriptCompTable->GetByID(scriptComponentID);
auto* itemScript = CppScripts::GetScript(m_Parent, scriptCompData.script_name);
if (!itemScript) {
LOG("null script?");
}
itemScript->OnFactionTriggerItemEquipped(m_Parent, equippedItem->GetId());
auto& itemScript = CppScripts::GetScript(m_Parent, scriptCompData.script_name);
itemScript.OnFactionTriggerItemEquipped(m_Parent, equippedItem->GetId());
}
}

Expand All @@ -953,11 +950,8 @@ void InventoryComponent::UnequipScripts(Item* unequippedItem) {
if (scriptComponentID > -1) {
CDScriptComponentTable* scriptCompTable = CDClientManager::GetTable<CDScriptComponentTable>();
CDScriptComponent scriptCompData = scriptCompTable->GetByID(scriptComponentID);
auto* itemScript = CppScripts::GetScript(m_Parent, scriptCompData.script_name);
if (!itemScript) {
LOG("null script?");
}
itemScript->OnFactionTriggerItemUnequipped(m_Parent, unequippedItem->GetId());
auto& itemScript = CppScripts::GetScript(m_Parent, scriptCompData.script_name);
itemScript.OnFactionTriggerItemUnequipped(m_Parent, unequippedItem->GetId());
}
}

Expand Down
2 changes: 1 addition & 1 deletion dGame/dComponents/ScriptComponent.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -48,5 +48,5 @@ CppScripts::Script* const ScriptComponent::GetScript() {
void ScriptComponent::SetScript(const std::string& scriptName) {
// Scripts are managed by the CppScripts class and are effecitvely singletons
// and they may also be used by other script components so DON'T delete them.
m_Script = CppScripts::GetScript(m_Parent, scriptName);
m_Script = &CppScripts::GetScript(m_Parent, scriptName);
}
Loading