Combine Workshop addon and fix prison startup
Merge owned systems into one addon while preserving resource identities. Gate player admission on the replicated prison scene, restore the original framed door, and hold enemy AI until escape. Correct scenario branding and author metadata, include publishing assets, and retain regression and native verification evidence.
This commit is contained in:
@@ -3,7 +3,7 @@ import os,re
|
||||
from pathlib import Path
|
||||
from policy_harness import ROOT,body,run
|
||||
base=Path(os.environ.get('ERR_VEHICLE_NATIVE_ROOT',str(ROOT)))
|
||||
source=base/'addons/core/Scripts/Game/ERR/ERR_NativeVehicleSecurityProbe.c'
|
||||
source=base/'addons/core/Scripts/Game/ERR/00_Core/ERR_NativeVehicleSecurityProbe.c'
|
||||
stop=body(source,'void Stop(').replace('null','nullptr')
|
||||
stop=stop.replace('ChimeraCharacter character = ChimeraCharacter.Cast(m_Player);','ChimeraCharacter* character = m_Player;')
|
||||
for name in ('m_Damage','m_Mode','character'):stop=stop.replace(name+'.',name+'->')
|
||||
@@ -46,8 +46,8 @@ assert '!door.CanBePerformedScript(m_Player)' in inspect and 'door.PerformAction
|
||||
assert 'm_Security.CanBreach(m_Player, reason)' in tick and '!m_Security.TryBreach(m_Player)' in tick
|
||||
assert 'DriverAvailable()' in tick
|
||||
assert 'm_DriverAction.CanBePerformedScript(m_Player)' in body(source,'protected bool DriverAvailable(')
|
||||
transport=(base/'addons/core/Scripts/Game/ERR/ERR_NativeTransportProbe.c').read_text()
|
||||
smoke=(base/'addons/core/Scripts/Game/ERR/ERR_NativeBaseSmoke.c').read_text()
|
||||
transport=(base/'addons/core/Scripts/Game/ERR/00_Core/ERR_NativeTransportProbe.c').read_text()
|
||||
smoke=(base/'addons/core/Scripts/Game/ERR/00_Core/ERR_NativeBaseSmoke.c').read_text()
|
||||
assert 'new ERR_NativeTransportProbe(this, m_ERRBasePlayer)' in smoke and 'if (m_ERRTransportProbe) m_ERRTransportProbe.Stop();' in smoke
|
||||
assert transport.index('m_SecurityProbe.Tick(now)') < transport.index('IEntity driver = Character(0)')
|
||||
assert 'void Stop() { if (m_SecurityProbe) m_SecurityProbe.Stop(); }' in transport
|
||||
@@ -55,7 +55,7 @@ print('PASS: actual native-prelude cleanup restores only original changed damage
|
||||
|
||||
# Existing transport tests did not extract CreateTransport. Test its real new
|
||||
# Configure hook with native construction/FindComponent calls represented by doubles.
|
||||
site=ROOT/'addons/core/Scripts/Game/ERR/ERR_SiteService.c'
|
||||
site=ROOT/'addons/core/Scripts/Game/ERR/00_Core/ERR_SiteService.c'
|
||||
create=body(site,'protected bool CreateTransport(').replace('protected ','').replace('null','nullptr')
|
||||
for name in ('ERR_SiteRuntime','ERR_SiteTransport','CarControllerComponent','ERR_VehicleSecurityComponent'):
|
||||
create=re.sub(r'\b'+name+r' (\w+)',name+r'* \1',create)
|
||||
|
||||
Reference in New Issue
Block a user