|
49 | 49 | //------------------------------------------------------------------------------------------------- |
50 | 50 | void AssistedTargetingUpdateModuleData::buildFieldParse(MultiIniFieldParse& p) |
51 | 51 | { |
52 | | - UpdateModuleData::buildFieldParse(p); |
| 52 | + UpdateModuleData::buildFieldParse(p); |
53 | 53 | static const FieldParse dataFieldParse[] = |
54 | 54 | { |
55 | 55 | { "AssistingClipSize", INI::parseInt, nullptr, offsetof( AssistedTargetingUpdateModuleData, m_clipSize ) }, |
56 | 56 | { "AssistingWeaponSlot", INI::parseLookupList, TheWeaponSlotTypeNamesLookupList, offsetof( AssistedTargetingUpdateModuleData, m_weaponSlot ) }, |
57 | | - { "LaserFromAssisted", INI::parseThingTemplate, nullptr, offsetof( AssistedTargetingUpdateModuleData, m_laserFromAssisted ) }, |
58 | | - { "LaserToTarget", INI::parseThingTemplate, nullptr, offsetof( AssistedTargetingUpdateModuleData, m_laserToTarget ) }, |
| 57 | + { "LaserFromAssisted", INI::parseAsciiString, nullptr, offsetof( AssistedTargetingUpdateModuleData, m_laserFromAssistedName ) }, |
| 58 | + { "LaserToTarget", INI::parseAsciiString, nullptr, offsetof( AssistedTargetingUpdateModuleData, m_laserToTargetName ) }, |
59 | 59 | { nullptr, nullptr, nullptr, 0 } |
60 | 60 | }; |
61 | | - p.add(dataFieldParse); |
| 61 | + p.add(dataFieldParse); |
62 | 62 | } |
63 | 63 |
|
64 | 64 | //------------------------------------------------------------------------------------------------- |
65 | 65 | //------------------------------------------------------------------------------------------------- |
66 | 66 | AssistedTargetingUpdate::AssistedTargetingUpdate( Thing *thing, const ModuleData* moduleData ) : UpdateModule( thing, moduleData ) |
67 | 67 | { |
68 | | - setWakeFrame(getObject(), UPDATE_SLEEP_FOREVER); |
| 68 | + m_laserFromAssisted = nullptr; |
| 69 | + m_laserToTarget = nullptr; |
69 | 70 | } |
70 | 71 |
|
71 | 72 | //------------------------------------------------------------------------------------------------- |
@@ -100,10 +101,10 @@ void AssistedTargetingUpdate::assistAttack( const Object *requestingObject, Obje |
100 | 101 | me->setWeaponLock( md->m_weaponSlot, LOCKED_TEMPORARILY ); |
101 | 102 | me->getAI()->aiAttackObject( victimObject, md->m_clipSize, CMD_FROM_AI ); |
102 | 103 |
|
103 | | - if( md->m_laserFromAssisted ) |
104 | | - makeFeedbackLaser( md->m_laserFromAssisted, requestingObject, me ); |
105 | | - if( md->m_laserToTarget ) |
106 | | - makeFeedbackLaser( md->m_laserToTarget, me, victimObject ); |
| 104 | + if( m_laserFromAssisted ) |
| 105 | + makeFeedbackLaser( m_laserFromAssisted, requestingObject, me ); |
| 106 | + if( m_laserToTarget ) |
| 107 | + makeFeedbackLaser( m_laserToTarget, me, victimObject ); |
107 | 108 | } |
108 | 109 |
|
109 | 110 | //------------------------------------------------------------------------------------------------- |
@@ -137,6 +138,11 @@ void AssistedTargetingUpdate::makeFeedbackLaser( const ThingTemplate *laserTempl |
137 | 138 | //------------------------------------------------------------------------------------------------- |
138 | 139 | UpdateSleepTime AssistedTargetingUpdate::update() |
139 | 140 | { |
| 141 | + const AssistedTargetingUpdateModuleData *d = getAssistedTargetingUpdateModuleData(); |
| 142 | + |
| 143 | + m_laserFromAssisted = TheThingFactory->findTemplate( d->m_laserFromAssistedName ); |
| 144 | + m_laserToTarget = TheThingFactory->findTemplate( d->m_laserToTargetName ); |
| 145 | + |
140 | 146 | return UPDATE_SLEEP_FOREVER; |
141 | 147 | } |
142 | 148 |
|
@@ -174,8 +180,11 @@ void AssistedTargetingUpdate::xfer( Xfer *xfer ) |
174 | 180 | // ------------------------------------------------------------------------------------------------ |
175 | 181 | void AssistedTargetingUpdate::loadPostProcess() |
176 | 182 | { |
| 183 | + const AssistedTargetingUpdateModuleData *d = getAssistedTargetingUpdateModuleData(); |
| 184 | + |
| 185 | + m_laserFromAssisted = TheThingFactory->findTemplate( d->m_laserFromAssistedName ); |
| 186 | + m_laserToTarget = TheThingFactory->findTemplate( d->m_laserToTargetName ); |
177 | 187 |
|
178 | 188 | // extend base class |
179 | 189 | UpdateModule::loadPostProcess(); |
180 | | - |
181 | 190 | } |
0 commit comments