Been working on integrating the latest CVS version, Oasis 2.0.1, and DG Scripts. I started with an almost completely happy CVS snapshot+OLC. Quick note on the error I began with before I continue: medit.c has an array subtype char, relevant code below: "%sQ%s) Quit\r\n" "Enter choice : ", grn, nrm, yel, position_types[(int)GET_POS(mob)], grn, nrm, yel, position_types[(int)GET_DEFAULT_POS(mob)], here--> grn, nrm, yel, attack_hit_text[GET_ATTACK(mob)].singular, grn, nrm, cyn, buf1, grn, nrm, cyn, buf2, #if CONFIG_OASIS_MPROG grn, nrm, cyn, (OLC_MPROGL(d) ? "Set." : "Not Set."), #endif Any concise explanations/thoughts/demands that I read a c manual appreciated. Now, on to the DG Scripts issues. First off, SEND_TO_Q was liberally used, so anyone melding current circle with the most recent DG should watch all such things . . . as well as send_to_char (since it's been reversed since DG was last updated). I *think* I managed to get it to function using write_to_output and such, of course I cannot boot and test yet. :) George removed get_obj from the most recent CVS, and DG actually uses it. I tossed the prototype back in handler.h as a kludge. Relevant DG code follows if anyone feels like taking a stab at why it calls it: This is from sub_write in dg_comm.c case '`': /* get obj_data, move to next token */ type[i] = *p; *s = '\0'; p = any_one_name(++p, name); (obj_data *)otokens[i] = find_invis ? (obj = get_obj(name)) : ((obj = get_obj_in_list_vis(ch, name, NULL, world[IN_ROOM(ch)].contents)) ? obj : (obj = get_obj_in_equip_vis(ch, name, &tmp, ch->equipment )) ? obj : (obj = get_obj_in_list_vis(ch, name, NULL, ch->carrying))); (obj_data *)otokens[i] = obj; tokens[++i] = ++s; break; *shrug* I cannot follow what it's attempting here at all. (And yes, there is plenty of code I can follow! I know it doesn't SEEM like it!) Anyone with an idea of why it would be using a non-existant function, please let me in on the secret? Now, for my big "showstopper" right now. Posting this before bed, hopefully when I wake up someone will have made some sense to me. dg_db_scripts.c: In function `parse_trigger': dg_db_scripts.c:55: `buf2' undeclared (first use in this function) relevant code: void parse_trigger(FILE *trig_f, int nr) { int t[2], k, attach_type; char line[256], *cmds, *s, flags[256]; struct cmdlist_element *cle; index_data *index; trig_data *trig; CREATE(trig, trig_data, 1); CREATE(index, index_data, 1); index->vnum = nr; index->number = 0; index->func = NULL; index->proto = trig; -> sprintf(buf2, "trig vnum %d", nr); trig->nr = top_of_trigt; trig->name = fread_string(trig_f, buf2); I've been over the other files which use sprintf (oh so many) and can't find a difference between the way this function is using it and the way they do. However, I've got novice eyes, as we're all aware. :) Thanks in advance for any and all help/explanations/demands that I enroll in a c course immediately. ;) -Mathew -- +---------------------------------------------------------------+ | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html | | Newbie List: http://groups.yahoo.com/group/circle-newbies/ | +---------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 06/25/03 PDT