From e9461dc3a1bee9af537a79feda2126ac1d7765a4 Mon Sep 17 00:00:00 2001 From: ZerolAcqua Date: Sat, 22 Feb 2025 11:29:56 +0800 Subject: [PATCH] refactor: replace expressions in indexes with variables --- src/game/editor/mapitems/layer_speedup.cpp | 80 +++++++++++----------- src/game/editor/mapitems/layer_switch.cpp | 72 +++++++++---------- src/game/editor/mapitems/layer_tele.cpp | 55 +++++++-------- src/game/editor/mapitems/layer_tune.cpp | 44 ++++++------ 4 files changed, 129 insertions(+), 122 deletions(-) diff --git a/src/game/editor/mapitems/layer_speedup.cpp b/src/game/editor/mapitems/layer_speedup.cpp index 7ba64275ddd..7ff33c958a4 100644 --- a/src/game/editor/mapitems/layer_speedup.cpp +++ b/src/game/editor/mapitems/layer_speedup.cpp @@ -94,67 +94,69 @@ void CLayerSpeedup::BrushDraw(std::shared_ptr pBrush, vec2 WorldPos) if(!Destructive && GetTile(fx, fy).m_Index) continue; - int Index = fy * m_Width + fx; + const int SrcIndex = y * pSpeedupLayer->m_Width + x; + const int TgtIndex = fy * m_Width + fx; + SSpeedupTileStateChange::SData Previous{ - m_pSpeedupTile[Index].m_Force, - m_pSpeedupTile[Index].m_Angle, - m_pSpeedupTile[Index].m_MaxSpeed, - m_pSpeedupTile[Index].m_Type, - m_pTiles[Index].m_Index}; + m_pSpeedupTile[TgtIndex].m_Force, + m_pSpeedupTile[TgtIndex].m_Angle, + m_pSpeedupTile[TgtIndex].m_MaxSpeed, + m_pSpeedupTile[TgtIndex].m_Type, + m_pTiles[TgtIndex].m_Index}; - if((m_pEditor->IsAllowPlaceUnusedTiles() || IsValidSpeedupTile(pSpeedupLayer->m_pTiles[y * pSpeedupLayer->m_Width + x].m_Index)) && pSpeedupLayer->m_pTiles[y * pSpeedupLayer->m_Width + x].m_Index != TILE_AIR) + if((m_pEditor->IsAllowPlaceUnusedTiles() || IsValidSpeedupTile(pSpeedupLayer->m_pTiles[SrcIndex].m_Index)) && pSpeedupLayer->m_pTiles[SrcIndex].m_Index != TILE_AIR) { if(m_pEditor->m_SpeedupAngle != pSpeedupLayer->m_SpeedupAngle || m_pEditor->m_SpeedupForce != pSpeedupLayer->m_SpeedupForce || m_pEditor->m_SpeedupMaxSpeed != pSpeedupLayer->m_SpeedupMaxSpeed) { - m_pSpeedupTile[Index].m_Force = m_pEditor->m_SpeedupForce; - m_pSpeedupTile[Index].m_MaxSpeed = m_pEditor->m_SpeedupMaxSpeed; - m_pSpeedupTile[Index].m_Angle = m_pEditor->m_SpeedupAngle; - m_pSpeedupTile[Index].m_Type = pSpeedupLayer->m_pTiles[y * pSpeedupLayer->m_Width + x].m_Index; - m_pTiles[Index].m_Index = pSpeedupLayer->m_pTiles[y * pSpeedupLayer->m_Width + x].m_Index; + m_pSpeedupTile[TgtIndex].m_Force = m_pEditor->m_SpeedupForce; + m_pSpeedupTile[TgtIndex].m_MaxSpeed = m_pEditor->m_SpeedupMaxSpeed; + m_pSpeedupTile[TgtIndex].m_Angle = m_pEditor->m_SpeedupAngle; + m_pSpeedupTile[TgtIndex].m_Type = pSpeedupLayer->m_pTiles[SrcIndex].m_Index; + m_pTiles[TgtIndex].m_Index = pSpeedupLayer->m_pTiles[SrcIndex].m_Index; } - else if(pSpeedupLayer->m_pSpeedupTile[y * pSpeedupLayer->m_Width + x].m_Force) + else if(pSpeedupLayer->m_pSpeedupTile[SrcIndex].m_Force) { - m_pSpeedupTile[Index].m_Force = pSpeedupLayer->m_pSpeedupTile[y * pSpeedupLayer->m_Width + x].m_Force; - m_pSpeedupTile[Index].m_Angle = pSpeedupLayer->m_pSpeedupTile[y * pSpeedupLayer->m_Width + x].m_Angle; - m_pSpeedupTile[Index].m_MaxSpeed = pSpeedupLayer->m_pSpeedupTile[y * pSpeedupLayer->m_Width + x].m_MaxSpeed; - m_pSpeedupTile[Index].m_Type = pSpeedupLayer->m_pTiles[y * pSpeedupLayer->m_Width + x].m_Index; - m_pTiles[Index].m_Index = pSpeedupLayer->m_pTiles[y * pSpeedupLayer->m_Width + x].m_Index; + m_pSpeedupTile[TgtIndex].m_Force = pSpeedupLayer->m_pSpeedupTile[SrcIndex].m_Force; + m_pSpeedupTile[TgtIndex].m_Angle = pSpeedupLayer->m_pSpeedupTile[SrcIndex].m_Angle; + m_pSpeedupTile[TgtIndex].m_MaxSpeed = pSpeedupLayer->m_pSpeedupTile[SrcIndex].m_MaxSpeed; + m_pSpeedupTile[TgtIndex].m_Type = pSpeedupLayer->m_pTiles[SrcIndex].m_Index; + m_pTiles[TgtIndex].m_Index = pSpeedupLayer->m_pTiles[SrcIndex].m_Index; } else if(m_pEditor->m_SpeedupForce) { - m_pSpeedupTile[Index].m_Force = m_pEditor->m_SpeedupForce; - m_pSpeedupTile[Index].m_MaxSpeed = m_pEditor->m_SpeedupMaxSpeed; - m_pSpeedupTile[Index].m_Angle = m_pEditor->m_SpeedupAngle; - m_pSpeedupTile[Index].m_Type = pSpeedupLayer->m_pTiles[y * pSpeedupLayer->m_Width + x].m_Index; - m_pTiles[Index].m_Index = pSpeedupLayer->m_pTiles[y * pSpeedupLayer->m_Width + x].m_Index; + m_pSpeedupTile[TgtIndex].m_Force = m_pEditor->m_SpeedupForce; + m_pSpeedupTile[TgtIndex].m_MaxSpeed = m_pEditor->m_SpeedupMaxSpeed; + m_pSpeedupTile[TgtIndex].m_Angle = m_pEditor->m_SpeedupAngle; + m_pSpeedupTile[TgtIndex].m_Type = pSpeedupLayer->m_pTiles[SrcIndex].m_Index; + m_pTiles[TgtIndex].m_Index = pSpeedupLayer->m_pTiles[SrcIndex].m_Index; } else { - m_pSpeedupTile[Index].m_Force = 0; - m_pSpeedupTile[Index].m_MaxSpeed = 0; - m_pSpeedupTile[Index].m_Angle = 0; - m_pSpeedupTile[Index].m_Type = 0; - m_pTiles[Index].m_Index = 0; + m_pSpeedupTile[TgtIndex].m_Force = 0; + m_pSpeedupTile[TgtIndex].m_MaxSpeed = 0; + m_pSpeedupTile[TgtIndex].m_Angle = 0; + m_pSpeedupTile[TgtIndex].m_Type = 0; + m_pTiles[TgtIndex].m_Index = 0; } } else { - m_pSpeedupTile[Index].m_Force = 0; - m_pSpeedupTile[Index].m_MaxSpeed = 0; - m_pSpeedupTile[Index].m_Angle = 0; - m_pSpeedupTile[Index].m_Type = 0; - m_pTiles[Index].m_Index = 0; + m_pSpeedupTile[TgtIndex].m_Force = 0; + m_pSpeedupTile[TgtIndex].m_MaxSpeed = 0; + m_pSpeedupTile[TgtIndex].m_Angle = 0; + m_pSpeedupTile[TgtIndex].m_Type = 0; + m_pTiles[TgtIndex].m_Index = 0; - if(pSpeedupLayer->m_pTiles[y * pSpeedupLayer->m_Width + x].m_Index != TILE_AIR) + if(pSpeedupLayer->m_pTiles[SrcIndex].m_Index != TILE_AIR) ShowPreventUnusedTilesWarning(); } SSpeedupTileStateChange::SData Current{ - m_pSpeedupTile[Index].m_Force, - m_pSpeedupTile[Index].m_Angle, - m_pSpeedupTile[Index].m_MaxSpeed, - m_pSpeedupTile[Index].m_Type, - m_pTiles[Index].m_Index}; + m_pSpeedupTile[TgtIndex].m_Force, + m_pSpeedupTile[TgtIndex].m_Angle, + m_pSpeedupTile[TgtIndex].m_MaxSpeed, + m_pSpeedupTile[TgtIndex].m_Type, + m_pTiles[TgtIndex].m_Index}; RecordStateChange(fx, fy, Previous, Current); } diff --git a/src/game/editor/mapitems/layer_switch.cpp b/src/game/editor/mapitems/layer_switch.cpp index 9e13e185559..e0b2c0f44c5 100644 --- a/src/game/editor/mapitems/layer_switch.cpp +++ b/src/game/editor/mapitems/layer_switch.cpp @@ -95,68 +95,70 @@ void CLayerSwitch::BrushDraw(std::shared_ptr pBrush, vec2 WorldPos) if(!Destructive && GetTile(fx, fy).m_Index) continue; - int Index = fy * m_Width + fx; + const int SrcIndex = y * pSwitchLayer->m_Width + x; + const int TgtIndex = fy * m_Width + fx; + SSwitchTileStateChange::SData Previous{ - m_pSwitchTile[Index].m_Number, - m_pSwitchTile[Index].m_Type, - m_pSwitchTile[Index].m_Flags, - m_pSwitchTile[Index].m_Delay, - m_pTiles[Index].m_Index}; + m_pSwitchTile[TgtIndex].m_Number, + m_pSwitchTile[TgtIndex].m_Type, + m_pSwitchTile[TgtIndex].m_Flags, + m_pSwitchTile[TgtIndex].m_Delay, + m_pTiles[TgtIndex].m_Index}; - if((m_pEditor->IsAllowPlaceUnusedTiles() || IsValidSwitchTile(pSwitchLayer->m_pTiles[y * pSwitchLayer->m_Width + x].m_Index)) && pSwitchLayer->m_pTiles[y * pSwitchLayer->m_Width + x].m_Index != TILE_AIR) + if((m_pEditor->IsAllowPlaceUnusedTiles() || IsValidSwitchTile(pSwitchLayer->m_pTiles[SrcIndex].m_Index)) && pSwitchLayer->m_pTiles[SrcIndex].m_Index != TILE_AIR) { if(m_pEditor->m_SwitchNum != pSwitchLayer->m_SwitchNumber || m_pEditor->m_SwitchDelay != pSwitchLayer->m_SwitchDelay) { - m_pSwitchTile[Index].m_Number = m_pEditor->m_SwitchNum; - m_pSwitchTile[Index].m_Delay = m_pEditor->m_SwitchDelay; + m_pSwitchTile[TgtIndex].m_Number = m_pEditor->m_SwitchNum; + m_pSwitchTile[TgtIndex].m_Delay = m_pEditor->m_SwitchDelay; } - else if(pSwitchLayer->m_pSwitchTile[y * pSwitchLayer->m_Width + x].m_Number) + else if(pSwitchLayer->m_pSwitchTile[SrcIndex].m_Number) { - m_pSwitchTile[Index].m_Number = pSwitchLayer->m_pSwitchTile[y * pSwitchLayer->m_Width + x].m_Number; - m_pSwitchTile[Index].m_Delay = pSwitchLayer->m_pSwitchTile[y * pSwitchLayer->m_Width + x].m_Delay; + m_pSwitchTile[TgtIndex].m_Number = pSwitchLayer->m_pSwitchTile[SrcIndex].m_Number; + m_pSwitchTile[TgtIndex].m_Delay = pSwitchLayer->m_pSwitchTile[SrcIndex].m_Delay; } else { - m_pSwitchTile[Index].m_Number = m_pEditor->m_SwitchNum; - m_pSwitchTile[Index].m_Delay = m_pEditor->m_SwitchDelay; + m_pSwitchTile[TgtIndex].m_Number = m_pEditor->m_SwitchNum; + m_pSwitchTile[TgtIndex].m_Delay = m_pEditor->m_SwitchDelay; } - m_pSwitchTile[Index].m_Type = pSwitchLayer->m_pTiles[y * pSwitchLayer->m_Width + x].m_Index; - m_pSwitchTile[Index].m_Flags = pSwitchLayer->m_pTiles[y * pSwitchLayer->m_Width + x].m_Flags; - m_pTiles[Index].m_Index = pSwitchLayer->m_pTiles[y * pSwitchLayer->m_Width + x].m_Index; - m_pTiles[Index].m_Flags = pSwitchLayer->m_pTiles[y * pSwitchLayer->m_Width + x].m_Flags; + m_pSwitchTile[TgtIndex].m_Type = pSwitchLayer->m_pTiles[SrcIndex].m_Index; + m_pSwitchTile[TgtIndex].m_Flags = pSwitchLayer->m_pTiles[SrcIndex].m_Flags; + m_pTiles[TgtIndex].m_Index = pSwitchLayer->m_pTiles[SrcIndex].m_Index; + m_pTiles[TgtIndex].m_Flags = pSwitchLayer->m_pTiles[SrcIndex].m_Flags; - if(!IsSwitchTileFlagsUsed(pSwitchLayer->m_pTiles[y * pSwitchLayer->m_Width + x].m_Index)) + if(!IsSwitchTileFlagsUsed(pSwitchLayer->m_pTiles[SrcIndex].m_Index)) { - m_pSwitchTile[Index].m_Flags = 0; + m_pSwitchTile[TgtIndex].m_Flags = 0; } - if(!IsSwitchTileNumberUsed(pSwitchLayer->m_pTiles[y * pSwitchLayer->m_Width + x].m_Index)) + if(!IsSwitchTileNumberUsed(pSwitchLayer->m_pTiles[SrcIndex].m_Index)) { - m_pSwitchTile[Index].m_Number = 0; + m_pSwitchTile[TgtIndex].m_Number = 0; } - if(!IsSwitchTileDelayUsed(pSwitchLayer->m_pTiles[y * pSwitchLayer->m_Width + x].m_Index)) + if(!IsSwitchTileDelayUsed(pSwitchLayer->m_pTiles[SrcIndex].m_Index)) { - m_pSwitchTile[Index].m_Delay = 0; + m_pSwitchTile[TgtIndex].m_Delay = 0; } } else { - m_pSwitchTile[Index].m_Number = 0; - m_pSwitchTile[Index].m_Type = 0; - m_pSwitchTile[Index].m_Flags = 0; - m_pSwitchTile[Index].m_Delay = 0; - m_pTiles[Index].m_Index = 0; + m_pSwitchTile[TgtIndex].m_Number = 0; + m_pSwitchTile[TgtIndex].m_Type = 0; + m_pSwitchTile[TgtIndex].m_Flags = 0; + m_pSwitchTile[TgtIndex].m_Delay = 0; + m_pTiles[TgtIndex].m_Index = 0; - if(pSwitchLayer->m_pTiles[y * pSwitchLayer->m_Width + x].m_Index != TILE_AIR) + if(pSwitchLayer->m_pTiles[SrcIndex].m_Index != TILE_AIR) ShowPreventUnusedTilesWarning(); } SSwitchTileStateChange::SData Current{ - m_pSwitchTile[Index].m_Number, - m_pSwitchTile[Index].m_Type, - m_pSwitchTile[Index].m_Flags, - m_pSwitchTile[Index].m_Delay, - m_pTiles[Index].m_Index}; + m_pSwitchTile[TgtIndex].m_Number, + m_pSwitchTile[TgtIndex].m_Type, + m_pSwitchTile[TgtIndex].m_Flags, + m_pSwitchTile[TgtIndex].m_Delay, + m_pTiles[TgtIndex].m_Index}; RecordStateChange(fx, fy, Previous, Current); } diff --git a/src/game/editor/mapitems/layer_tele.cpp b/src/game/editor/mapitems/layer_tele.cpp index 8436b2ab4f7..f5aca5d2986 100644 --- a/src/game/editor/mapitems/layer_tele.cpp +++ b/src/game/editor/mapitems/layer_tele.cpp @@ -93,65 +93,66 @@ void CLayerTele::BrushDraw(std::shared_ptr pBrush, vec2 WorldPos) if(!Destructive && GetTile(fx, fy).m_Index) continue; - int Index = fy * m_Width + fx; + const int SrcIndex = y * pTeleLayer->m_Width + x; + const int TgtIndex = fy * m_Width + fx; + STeleTileStateChange::SData Previous{ - m_pTeleTile[Index].m_Number, - m_pTeleTile[Index].m_Type, - m_pTiles[Index].m_Index}; + m_pTeleTile[TgtIndex].m_Number, + m_pTeleTile[TgtIndex].m_Type, + m_pTiles[TgtIndex].m_Index}; - unsigned char TgtIndex = pTeleLayer->m_pTiles[y * pTeleLayer->m_Width + x].m_Index; - if((m_pEditor->IsAllowPlaceUnusedTiles() || IsValidTeleTile(TgtIndex)) && TgtIndex != TILE_AIR) + if((m_pEditor->IsAllowPlaceUnusedTiles() || IsValidTeleTile(pTeleLayer->m_pTiles[SrcIndex].m_Index)) && pTeleLayer->m_pTiles[SrcIndex].m_Index != TILE_AIR) { - bool IsCheckpoint = IsTeleTileCheckpoint(TgtIndex); - if(!IsCheckpoint && !IsTeleTileNumberUsed(TgtIndex, false)) + bool IsCheckpoint = IsTeleTileCheckpoint(pTeleLayer->m_pTiles[SrcIndex].m_Index); + if(!IsCheckpoint && !IsTeleTileNumberUsed(pTeleLayer->m_pTiles[SrcIndex].m_Index, false)) { // Tele tile number is unused. Set a known value which is not 0, // as tiles with number 0 would be ignored by previous versions. - m_pTeleTile[Index].m_Number = 255; + m_pTeleTile[TgtIndex].m_Number = 255; } - else if(pTeleLayer->m_pTeleTile[y * pTeleLayer->m_Width + x].m_Number) + else if(pTeleLayer->m_pTeleTile[SrcIndex].m_Number) { - m_pTeleTile[Index].m_Number = pTeleLayer->m_pTeleTile[y * pTeleLayer->m_Width + x].m_Number; + m_pTeleTile[TgtIndex].m_Number = pTeleLayer->m_pTeleTile[SrcIndex].m_Number; } else { if((!IsCheckpoint && !m_pEditor->m_TeleNumber) || (IsCheckpoint && !m_pEditor->m_TeleCheckpointNumber)) { - m_pTeleTile[Index].m_Number = 0; - m_pTeleTile[Index].m_Type = 0; - m_pTiles[Index].m_Index = 0; + m_pTeleTile[TgtIndex].m_Number = 0; + m_pTeleTile[TgtIndex].m_Type = 0; + m_pTiles[TgtIndex].m_Index = 0; STeleTileStateChange::SData Current{ - m_pTeleTile[Index].m_Number, - m_pTeleTile[Index].m_Type, - m_pTiles[Index].m_Index}; + m_pTeleTile[TgtIndex].m_Number, + m_pTeleTile[TgtIndex].m_Type, + m_pTiles[TgtIndex].m_Index}; RecordStateChange(fx, fy, Previous, Current); continue; } else { - m_pTeleTile[Index].m_Number = IsCheckpoint ? m_pEditor->m_TeleCheckpointNumber : m_pEditor->m_TeleNumber; + m_pTeleTile[TgtIndex].m_Number = IsCheckpoint ? m_pEditor->m_TeleCheckpointNumber : m_pEditor->m_TeleNumber; } } - m_pTeleTile[Index].m_Type = pTeleLayer->m_pTiles[y * pTeleLayer->m_Width + x].m_Index; - m_pTiles[Index].m_Index = pTeleLayer->m_pTiles[y * pTeleLayer->m_Width + x].m_Index; + m_pTeleTile[TgtIndex].m_Type = pTeleLayer->m_pTiles[SrcIndex].m_Index; + m_pTiles[TgtIndex].m_Index = pTeleLayer->m_pTiles[SrcIndex].m_Index; } else { - m_pTeleTile[Index].m_Number = 0; - m_pTeleTile[Index].m_Type = 0; - m_pTiles[Index].m_Index = 0; + m_pTeleTile[TgtIndex].m_Number = 0; + m_pTeleTile[TgtIndex].m_Type = 0; + m_pTiles[TgtIndex].m_Index = 0; - if(pTeleLayer->m_pTiles[y * pTeleLayer->m_Width + x].m_Index != TILE_AIR) + if(pTeleLayer->m_pTiles[SrcIndex].m_Index != TILE_AIR) ShowPreventUnusedTilesWarning(); } STeleTileStateChange::SData Current{ - m_pTeleTile[Index].m_Number, - m_pTeleTile[Index].m_Type, - m_pTiles[Index].m_Index}; + m_pTeleTile[TgtIndex].m_Number, + m_pTeleTile[TgtIndex].m_Type, + m_pTiles[TgtIndex].m_Index}; RecordStateChange(fx, fy, Previous, Current); } diff --git a/src/game/editor/mapitems/layer_tune.cpp b/src/game/editor/mapitems/layer_tune.cpp index 8ea0043a104..89788274a27 100644 --- a/src/game/editor/mapitems/layer_tune.cpp +++ b/src/game/editor/mapitems/layer_tune.cpp @@ -92,50 +92,52 @@ void CLayerTune::BrushDraw(std::shared_ptr pBrush, vec2 WorldPos) if(!Destructive && GetTile(fx, fy).m_Index) continue; - int Index = fy * m_Width + fx; + const int SrcIndex = y * pTuneLayer->m_Width + x; + const int TgtIndex = fy * m_Width + fx; + STuneTileStateChange::SData Previous{ - m_pTuneTile[Index].m_Number, - m_pTuneTile[Index].m_Type, - m_pTiles[Index].m_Index}; + m_pTuneTile[TgtIndex].m_Number, + m_pTuneTile[TgtIndex].m_Type, + m_pTiles[TgtIndex].m_Index}; - if((m_pEditor->IsAllowPlaceUnusedTiles() || IsValidTuneTile(pTuneLayer->m_pTiles[y * pTuneLayer->m_Width + x].m_Index)) && pTuneLayer->m_pTiles[y * pTuneLayer->m_Width + x].m_Index != TILE_AIR) + if((m_pEditor->IsAllowPlaceUnusedTiles() || IsValidTuneTile(pTuneLayer->m_pTiles[SrcIndex].m_Index)) && pTuneLayer->m_pTiles[SrcIndex].m_Index != TILE_AIR) { if(m_pEditor->m_TuningNum != pTuneLayer->m_TuningNumber) { - m_pTuneTile[Index].m_Number = m_pEditor->m_TuningNum; + m_pTuneTile[TgtIndex].m_Number = m_pEditor->m_TuningNum; } - else if(pTuneLayer->m_pTuneTile[y * pTuneLayer->m_Width + x].m_Number) - m_pTuneTile[Index].m_Number = pTuneLayer->m_pTuneTile[y * pTuneLayer->m_Width + x].m_Number; + else if(pTuneLayer->m_pTuneTile[SrcIndex].m_Number) + m_pTuneTile[TgtIndex].m_Number = pTuneLayer->m_pTuneTile[SrcIndex].m_Number; else { if(!m_pEditor->m_TuningNum) { - m_pTuneTile[Index].m_Number = 0; - m_pTuneTile[Index].m_Type = 0; - m_pTiles[Index].m_Index = 0; + m_pTuneTile[TgtIndex].m_Number = 0; + m_pTuneTile[TgtIndex].m_Type = 0; + m_pTiles[TgtIndex].m_Index = 0; continue; } else - m_pTuneTile[Index].m_Number = m_pEditor->m_TuningNum; + m_pTuneTile[TgtIndex].m_Number = m_pEditor->m_TuningNum; } - m_pTuneTile[Index].m_Type = pTuneLayer->m_pTiles[y * pTuneLayer->m_Width + x].m_Index; - m_pTiles[Index].m_Index = pTuneLayer->m_pTiles[y * pTuneLayer->m_Width + x].m_Index; + m_pTuneTile[TgtIndex].m_Type = pTuneLayer->m_pTiles[SrcIndex].m_Index; + m_pTiles[TgtIndex].m_Index = pTuneLayer->m_pTiles[SrcIndex].m_Index; } else { - m_pTuneTile[Index].m_Number = 0; - m_pTuneTile[Index].m_Type = 0; - m_pTiles[Index].m_Index = 0; + m_pTuneTile[TgtIndex].m_Number = 0; + m_pTuneTile[TgtIndex].m_Type = 0; + m_pTiles[TgtIndex].m_Index = 0; - if(pTuneLayer->m_pTiles[y * pTuneLayer->m_Width + x].m_Index != TILE_AIR) + if(pTuneLayer->m_pTiles[SrcIndex].m_Index != TILE_AIR) ShowPreventUnusedTilesWarning(); } STuneTileStateChange::SData Current{ - m_pTuneTile[Index].m_Number, - m_pTuneTile[Index].m_Type, - m_pTiles[Index].m_Index}; + m_pTuneTile[TgtIndex].m_Number, + m_pTuneTile[TgtIndex].m_Type, + m_pTiles[TgtIndex].m_Index}; RecordStateChange(fx, fy, Previous, Current); }