MCPcopy Create free account
hub / github.com/DescentDevelopers/Descent3 / OnAddScript

Method OnAddScript

editor/DallasMainDlg.cpp:1202–1245  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1200}
1201
1202LRESULT CDallasMainDlg::OnAddScript(WPARAM, LPARAM) {
1203 HTREEITEM new_node;
1204
1205 int new_id = GetLowestUnusedScriptID();
1206
1207 new_node = CreateDefaultScriptTree(new_id);
1208 if (new_node != NULL) {
1209 if (new_id == m_NextScriptID)
1210 m_NextScriptID++;
1211 m_ScriptTree.SelectItem(new_node);
1212
1213 // Assign given data to owner
1214 HTREEITEM owner_node = GetScriptOwnerNode(new_node);
1215 if (owner_node != NULL) {
1216 tTreeNodeData *data = (tTreeNodeData *)m_ScriptTree.GetItemData(owner_node);
1217 if (data != NULL) {
1218 data->ID = m_ScriptOwnerType;
1219 data->int_val = m_ScriptOwnerHandle;
1220 if (data->ID == OBJECT_TYPE) {
1221 object *objp = ObjGet(data->int_val);
1222 if (objp == NULL || objp->type == OBJ_NONE || objp->name == NULL) {
1223 data->int_val = OBJECT_HANDLE_NONE;
1224 strcpy(data->str_val, "");
1225 } else {
1226 strcpy(data->str_val, objp->name);
1227 }
1228 } else if (data->ID == TRIGGER_TYPE) {
1229 if (data->int_val < 0 || data->int_val >= Num_triggers) {
1230 data->int_val = NOT_SPECIFIED_TYPE;
1231 strcpy(data->str_val, "");
1232 } else {
1233 strcpy(data->str_val, Triggers[data->int_val].name);
1234 }
1235 } else {
1236 strcpy(data->str_val, "");
1237 }
1238 UpdateNodeText(owner_node);
1239 }
1240 }
1241 // Prompt the user for the name of this script
1242 AssignSpecificValue();
1243 }
1244 return 0;
1245}
1246
1247LRESULT CDallasMainDlg::OnAddScriptAndHighlight(WPARAM, LPARAM) {
1248 HTREEITEM new_node;

Callers

nothing calls this directly

Calls 2

ObjGetFunction · 0.85
SelectItemMethod · 0.45

Tested by

no test coverage detected