23
23
24
24
using namespace XERCES_CPP_NAMESPACE ;
25
25
26
-
27
-
28
- const PsaiStringUtilities& stringUtils = PsaiStringUtilities::getStringUtils();
29
- PsaiXmlUtils& xmlUtils = *(new PsaiXmlUtils());
26
+ static const PsaiStringUtilities& stringUtils = PsaiStringUtilities::getStringUtils();
27
+ static PsaiXmlUtils& xmlUtils = *(new PsaiXmlUtils());
30
28
31
29
PsaiXmlGenerator::PsaiXmlGenerator ()
32
30
{
@@ -56,7 +54,7 @@ DOMElement& PsaiXmlGenerator::addVectorElement(DOMDocument& doc, DOMElement& par
56
54
return vectorElement;
57
55
}
58
56
59
- DOMElement& PsaiXmlGenerator::addClientNumberElement (DOMDocument& doc, DOMElement& parentElement, uint32_t clientNumber, PsaiXmlUtils& xmlUtils )
57
+ DOMElement& PsaiXmlGenerator::addClientNumberElement (DOMDocument& doc, DOMElement& parentElement, uint32_t clientNumber)
60
58
{
61
59
return xmlUtils.createDomElement (doc, parentElement, PsaiXmlConstants::ELEMENT_CLIENT_NUM, stringUtils.convertToString (clientNumber));
62
60
}
@@ -88,7 +86,7 @@ String PsaiXmlGenerator::toXml(const psChatMessage& msg)
88
86
89
87
xmlUtils.createDomElement (doc, messageElement, PsaiXmlConstants::ELEMENT_CHAT_CHAT_TYPE, xmlUtils.getChatTypeAsString (msg.iChatType ));
90
88
91
- addClientNumberElement (doc, messageElement, getClientNumber (msg), xmlUtils );
89
+ addClientNumberElement (doc, messageElement, getClientNumber (msg));
92
90
93
91
xmlString = xmlUtils.convertDomDocumentToXmlString (doc);
94
92
@@ -109,7 +107,7 @@ String PsaiXmlGenerator::toXml(const psPlaySoundMessage& msg)
109
107
110
108
DOMElement& messageElement = xmlUtils.createDomElement (doc, root, PsaiXmlConstants::TYPE_PLAY_SOUND_MESSAGE);
111
109
xmlUtils.createDomElement (doc, messageElement, PsaiXmlConstants::ELEMENT_PLAY_SOUND_SOUND, msg.sound .GetDataSafe ());
112
- addClientNumberElement (doc, messageElement, getClientNumber (msg), xmlUtils );
110
+ addClientNumberElement (doc, messageElement, getClientNumber (msg));
113
111
114
112
xmlString = xmlUtils.convertDomDocumentToXmlString (doc);
115
113
@@ -134,7 +132,7 @@ String PsaiXmlGenerator::toXml(const psSoundEventMessage& msg)
134
132
String typeString = stringUtils.convertToString (msg.type );
135
133
136
134
xmlUtils.createDomElement (doc, messageElement, PsaiXmlConstants::ELEMENT_SOUNT_EVENT_TYPE, typeString);
137
- addClientNumberElement (doc, messageElement, getClientNumber (msg), xmlUtils );
135
+ addClientNumberElement (doc, messageElement, getClientNumber (msg));
138
136
xmlString = xmlUtils.convertDomDocumentToXmlString (doc);
139
137
xmlUtils.clearXmlUtils ();
140
138
}
@@ -182,7 +180,7 @@ String PsaiXmlGenerator::toXml(const psPersistItem& msg)
182
180
String yRot = stringUtils.convertToString (msg.yRot );
183
181
xmlUtils.createDomElement (doc, messageElement, PsaiXmlConstants::ELEMENT_PERSIST_ITEM_Y_ROTATION, yRot);
184
182
185
- addClientNumberElement (doc, messageElement, getClientNumber (msg), xmlUtils );
183
+ addClientNumberElement (doc, messageElement, getClientNumber (msg));
186
184
187
185
xmlString = xmlUtils.convertDomDocumentToXmlString (doc);
188
186
@@ -201,7 +199,7 @@ String PsaiXmlGenerator::toXml(const psPersistActor& msg)
201
199
DOMDocument& doc = xmlUtils.getDOMDocumentForMessageType (PsaiXmlConstants::MSGTYPE_PERSIST_ACTOR);
202
200
DOMElement& root = *(doc.getDocumentElement ());
203
201
DOMElement& messageElement = xmlUtils.createDomElement (doc, root, PsaiXmlConstants::TYPE_PERSIST_ACTOR_MESSAGE);
204
- addClientNumberElement (doc, messageElement, getClientNumber (msg), xmlUtils );
202
+ addClientNumberElement (doc, messageElement, getClientNumber (msg));
205
203
xmlString = xmlUtils.convertDomDocumentToXmlString (doc);
206
204
xmlUtils.clearXmlUtils ();
207
205
}
@@ -225,7 +223,7 @@ String PsaiXmlGenerator::toXml(const psPersistActionLocation& msg)
225
223
xmlUtils.createDomElement (doc, messageElement, PsaiXmlConstants::ELEMENT_PERSIST_ACTION_LOCATION_ID, stringUtils.convertToString (msg.eid .Unbox ()));
226
224
xmlUtils.createDomElement (doc, messageElement, PsaiXmlConstants::ELEMENT_PERSIST_ACTION_LOCATION_NAME, msg.name .GetDataSafe ());
227
225
228
- addClientNumberElement (doc, messageElement, getClientNumber (msg), xmlUtils );
226
+ addClientNumberElement (doc, messageElement, getClientNumber (msg));
229
227
xmlString = xmlUtils.convertDomDocumentToXmlString (doc);
230
228
xmlUtils.clearXmlUtils ();
231
229
}
@@ -243,7 +241,7 @@ String PsaiXmlGenerator::toXml(const psRemoveObject& msg)
243
241
DOMElement& root = *(doc.getDocumentElement ());
244
242
DOMElement& messageElement = xmlUtils.createDomElement (doc, root, PsaiXmlConstants::TYPE_REMOVE_OBJECT_MESSAGE);
245
243
xmlUtils.createDomElement (doc, messageElement, PsaiXmlConstants::ELEMENT_REMOVE_OBJECT_OBJECT_ID, stringUtils.convertToString (msg.objectEID .Unbox ()));
246
- addClientNumberElement (doc, messageElement, getClientNumber (msg), xmlUtils );
244
+ addClientNumberElement (doc, messageElement, getClientNumber (msg));
247
245
xmlString = xmlUtils.convertDomDocumentToXmlString (doc);
248
246
xmlUtils.clearXmlUtils ();
249
247
}
@@ -288,6 +286,15 @@ String PsaiXmlGenerator::toXml(const psCombatEventMessage& msg)
288
286
if (xmlUtils.initiliaseXmlUtils ())
289
287
{
290
288
DOMDocument& doc = xmlUtils.getDOMDocumentForMessageType (PsaiXmlConstants::MSGTYPE_COMBATEVENT);
289
+ DOMElement& root = xmlUtils.getDocumentRootElement (doc);
290
+ DOMElement& messageElement = xmlUtils.createDomElement (doc, root, PsaiXmlConstants::TYPE_COMBAT_MESSAGE);
291
+ xmlUtils.createDomElement (doc, messageElement, PsaiXmlConstants::ELEMENT_COMBAT_ATTACKER_ID, stringUtils.convertToString (msg.attacker_id .Unbox ()));
292
+ xmlUtils.createDomElement (doc, messageElement, PsaiXmlConstants::ELEMENT_COMBAT_DAMAGE, stringUtils.convertToString (msg.damage ));
293
+ xmlUtils.createDomElement (doc, messageElement, PsaiXmlConstants::ELEMENT_COMBAT_TARGET_ID, stringUtils.convertToString (msg.target_id .Unbox ()));
294
+ xmlUtils.createDomElement (doc, messageElement, PsaiXmlConstants::ELEMENT_COMBAT_TARGET_LOCATION, stringUtils.convertToString (msg.target_location ));
295
+
296
+ int clientNum = getClientNumber (msg);
297
+ addClientNumberElement (doc, messageElement, clientNum);
291
298
292
299
xmlString = xmlUtils.convertDomDocumentToXmlString (doc);
293
300
xmlUtils.clearXmlUtils ();
0 commit comments