Skip to content

Commit

Permalink
Change parameter type
Browse files Browse the repository at this point in the history
  • Loading branch information
Eli2 committed Jul 6, 2014
1 parent 9b9130d commit eaec10b
Show file tree
Hide file tree
Showing 6 changed files with 27 additions and 32 deletions.
4 changes: 2 additions & 2 deletions src/core/Core.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -777,7 +777,7 @@ void SetEditMode(long ed, const bool stop_sound) {
}
else
{
ARX_SCRIPT_ResetAll(1);
ARX_SCRIPT_ResetAll(true);
EERIE_ANIMMANAGER_PurgeUnused();
}

Expand Down Expand Up @@ -837,7 +837,7 @@ void FirstFrameProc() {
CleanInventory();
ARX_SCRIPT_Timer_ClearAll();
UnlinkAllLinkedObjects();
ARX_SCRIPT_ResetAll(0);
ARX_SCRIPT_ResetAll(false);
}

SecondaryInventory=NULL;
Expand Down
2 changes: 1 addition & 1 deletion src/game/NPC.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -288,7 +288,7 @@ void ARX_NPC_Revive(Entity * io, bool init)
if(io->ioflags & IO_NPC) {
io->ioflags &= ~IO_NO_COLLISIONS;
io->_npcdata->lifePool.current = io->_npcdata->lifePool.max;
ARX_SCRIPT_ResetObject(io, 1);
ARX_SCRIPT_ResetObject(io, true);
io->_npcdata->lifePool.current = io->_npcdata->lifePool.max;
}

Expand Down
2 changes: 1 addition & 1 deletion src/game/Player.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2778,7 +2778,7 @@ void ARX_GAME_Reset(long type) {
// Scripts
ARX_SCRIPT_Timer_ClearAll();
ARX_SCRIPT_EventStackClear();
ARX_SCRIPT_ResetAll(0);
ARX_SCRIPT_ResetAll(false);

// Conversations
ARX_CONVERSATION_Reset();
Expand Down
2 changes: 1 addition & 1 deletion src/scene/ChangeLevel.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1626,7 +1626,7 @@ long ARX_CHANGELEVEL_Pop_Level(ARX_CHANGELEVEL_INDEX * asi, long num, bool first
Entity * e = entities[handle];

if(e && !e->scriptload) {
ARX_SCRIPT_Reset(e, 1);
ARX_SCRIPT_Reset(e, true);
}
}

Expand Down
43 changes: 19 additions & 24 deletions src/script/Script.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -169,50 +169,45 @@ void ARX_SCRIPT_SetMainEvent(Entity * io, const string & newevent) {

//*************************************************************************************
//*************************************************************************************
void ARX_SCRIPT_ResetObject(Entity * io, long flags)
{
void ARX_SCRIPT_ResetObject(Entity * io, bool init) {
if(!io)
return;

// Now go for Script INIT/RESET depending on Mode
if(io) {

EntityHandle num = io->index();

if (entities[num] && entities[num]->script.data)
{
if(entities[num] && entities[num]->script.data) {
entities[num]->script.allowevents = 0;

if (flags) ScriptEvent::send(&entities[num]->script, SM_INIT, "", entities[num], "");

if(init)
ScriptEvent::send(&entities[num]->script, SM_INIT, "", entities[num], "");

if (entities[num])
if(entities[num])
ARX_SCRIPT_SetMainEvent(entities[num], "main");
}

// Do the same for Local Script
if (entities[num] && entities[num]->over_script.data)
{
if(entities[num] && entities[num]->over_script.data) {
entities[num]->over_script.allowevents = 0;

if (flags) ScriptEvent::send(&entities[num]->over_script, SM_INIT, "", entities[num], "");


if(init)
ScriptEvent::send(&entities[num]->over_script, SM_INIT, "", entities[num], "");
}

// Sends InitEnd Event
if (flags)
{
if (entities[num] && entities[num]->script.data)
if(init) {
if(entities[num] && entities[num]->script.data)
ScriptEvent::send(&entities[num]->script, SM_INITEND, "", entities[num], "");

if (entities[num] && entities[num]->over_script.data)
if(entities[num] && entities[num]->over_script.data)
ScriptEvent::send(&entities[num]->over_script, SM_INITEND, "", entities[num], "");
}

if (entities[num])
if(entities[num])
entities[num]->gameFlags &= ~GFLAG_NEEDINIT;
}
}

void ARX_SCRIPT_Reset(Entity * io, long flags) {
void ARX_SCRIPT_Reset(Entity * io, bool init) {

//Release Script Local Variables
if(io->script.lvar) {
Expand All @@ -237,17 +232,17 @@ void ARX_SCRIPT_Reset(Entity * io, long flags) {
}

if(!io->scriptload) {
ARX_SCRIPT_ResetObject(io, flags);
ARX_SCRIPT_ResetObject(io, init);
}
}

void ARX_SCRIPT_ResetAll(long flags) {
void ARX_SCRIPT_ResetAll(bool init) {
for(size_t i = 0; i < entities.size(); i++) {
const EntityHandle handle = EntityHandle(i);
Entity * e = entities[handle];

if(e && !e->scriptload) {
ARX_SCRIPT_Reset(e, flags);
ARX_SCRIPT_Reset(e, init);
}
}
}
Expand Down
6 changes: 3 additions & 3 deletions src/script/Script.h
Original file line number Diff line number Diff line change
Expand Up @@ -424,14 +424,14 @@ void ARX_SCRIPT_EventStackExecute(size_t limit = 20);
void ARX_SCRIPT_EventStackExecuteAll();
void ARX_SCRIPT_EventStackInit();
void ARX_SCRIPT_EventStackClear(bool check_exist = true);
void ARX_SCRIPT_ResetObject(Entity * io, long flags);
void ARX_SCRIPT_Reset(Entity * io, long flags);
void ARX_SCRIPT_ResetObject(Entity * io, bool init);
void ARX_SCRIPT_Reset(Entity * io, bool init);
long ARX_SCRIPT_GetSystemIOScript(Entity * io, const std::string & name);
void ARX_SCRIPT_ComputeShortcuts(EERIE_SCRIPT & es);
void ARX_SCRIPT_AllowInterScriptExec();
long ARX_SCRIPT_CountTimers();
void ARX_SCRIPT_Timer_ClearByNum(long num);
void ARX_SCRIPT_ResetAll(long flags);
void ARX_SCRIPT_ResetAll(bool init);
void ARX_SCRIPT_EventStackClearForIo(Entity * io);
Entity * ARX_SCRIPT_Get_IO_Max_Events();
Entity * ARX_SCRIPT_Get_IO_Max_Events_Sent();
Expand Down

0 comments on commit eaec10b

Please sign in to comment.