Changeset 489
- Timestamp:
- 08/16/06 02:18:14 (2 years ago)
- Files:
-
- 1.8.0/CHANGES.180 (modified) (1 diff)
- 1.8.0/Patchlevel (modified) (1 diff)
- 1.8.0/game/txt/hlp/pennv180.hlp (modified) (2 diffs)
- 1.8.0/game/txt/hlp/pennvOLD.hlp (modified) (1 diff)
- 1.8.0/hdrs/parse.h (modified) (1 diff)
- 1.8.0/hdrs/version.h (modified) (1 diff)
- 1.8.0/src/cmds.c (modified) (2 diffs)
- 1.8.0/src/command.c (modified) (1 diff)
- 1.8.0/src/funmisc.c (modified) (9 diffs)
- 1.8.0/src/game.c (modified) (1 diff)
- 1.8.0/src/wiz.c (modified) (2 diffs)
- 1.8.0/win32/msvc.net/pennmush.vcproj (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
1.8.0/CHANGES.180
r487 r489 12 12 13 13 ========================================================================== 14 15 Version 1.8.0 patchlevel 3 February 26, 2005 16 17 Fixes: 18 * 1.8.0p2 fixed ""hi when chat_strip_quote was on, and broke it 19 when it was off. Fixed both ways now. Report by Cheetah@M*U*S*H. 20 * The @break fix in 1.8.0p2 stopped compound break actions 21 in {}'s from working correctly. Fixed now. Report by 22 Kevin@M*U*S*H. [TAP] 23 * @list/list() works right with flags/powers now. 24 * MS VS.NET project file now includes sql.c/h and bufferq.c/h. 25 Report by T'orA@M*U*S*H. 26 * playermem() and objectmem() now return #-1 NO MATCH consistently 27 when they can't match their argument to an object of an appropriate 28 type. Suggested by Cheetah@M*U*S*H. 29 14 30 15 31 Version 1.8.0 patchlevel 2 February 2, 2005 1.8.0/Patchlevel
r487 r489 1 1 Do not edit this file. It is maintained by the official PennMUSH patches. 2 This is PennMUSH 1.8.0p 22 This is PennMUSH 1.8.0p3 1.8.0/game/txt/hlp/pennv180.hlp
r487 r489 1 & 1.8.0p 21 & 1.8.0p3 2 2 & changes 3 3 This is a list of changes in this patchlevel which are probably of … … 12 12 be read in 'help patchlevels'. 13 13 14 Version 1.8.0 patchlevel 3 February 26, 2005 15 16 Fixes: 17 * 1.8.0p2 fixed ""hi when chat_strip_quote was on, and broke it 18 when it was off. Fixed both ways now. Report by Cheetah@M*U*S*H. 19 * The @break fix in 1.8.0p2 stopped compound break actions 20 in {}'s from working correctly. Fixed now. Report by 21 Kevin@M*U*S*H. [TAP] 22 * @list/list() works right with flags/powers now. 23 * MS VS.NET project file now includes sql.c/h and bufferq.c/h. 24 Report by T'orA@M*U*S*H. 25 * playermem() and objectmem() now return #-1 NO MATCH consistently 26 when they can't match their argument to an object of an appropriate 27 type. Suggested by Cheetah@M*U*S*H. 28 29 30 & 1.8.0p2 14 31 Version 1.8.0 patchlevel 2 February 2, 2005 15 32 1.8.0/game/txt/hlp/pennvOLD.hlp
r487 r489 4418 4418 type 'help <version>p<patchlevel>'. For example, 'help 1.7.2p3' 4419 4419 4420 1.8.0: 0, 1, 2 4420 1.8.0: 0, 1, 2, 3 4421 4421 1.7.7: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 4422 4422 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 1.8.0/hdrs/parse.h
r477 r489 189 189 * PE_STRIP_BRACES strips off top-level braces. 190 190 * 191 * PE_COMMAND_BRACES strips off only completely enclosing braces, 192 * suitable for trimming command lists given to noparse commands like 193 * @switch or @break. 194 * 191 195 * PE_EVALUATE allows %-substitutions, []-evaluation, function evaluation, 192 196 * and \-stripping. 1.8.0/hdrs/version.h
r487 r489 1 1 #define VERSION "1.8.0" 2 #define PATCHLEVEL " 2"3 #define PATCHDATE "[02/ 02/2005]"4 #define NUMVERSION 00100800000 22 #define PATCHLEVEL "3" 3 #define PATCHDATE "[02/26/2005]" 4 #define NUMVERSION 001008000003 1.8.0/src/cmds.c
r477 r489 96 96 if (parse_boolean(arg_left)) { 97 97 global_eval_context.break_called = 1; 98 if (arg_right && *arg_right) 99 strcpy(global_eval_context.break_replace, arg_right); 98 if (arg_right && *arg_right) { 99 char const *sp = arg_right; 100 char *bp = global_eval_context.break_replace; 101 process_expression(global_eval_context.break_replace, &bp, &sp, 102 player, player, cause, 103 PE_COMMAND_BRACES, PT_DEFAULT, NULL); 104 *bp++ = '\0'; 105 } 100 106 } 101 107 } … … 104 110 if (!parse_boolean(arg_left)) { 105 111 global_eval_context.break_called = 1; 106 if (arg_right && *arg_right) 107 strcpy(global_eval_context.break_replace, arg_right); 112 if (arg_right && *arg_right) { 113 char const *sp = arg_right; 114 char *bp = global_eval_context.break_replace; 115 process_expression(global_eval_context.break_replace, &bp, &sp, 116 player, player, cause, 117 PE_COMMAND_BRACES, PT_DEFAULT, NULL); 118 *bp++ = '\0'; 119 } 108 120 } 109 121 } 1.8.0/src/command.c
r487 r489 899 899 case SAY_TOKEN: 900 900 replacer = "SAY"; 901 p--; /* Since 'say' strips out the '"' */ 901 if (CHAT_STRIP_QUOTE) 902 p--; /* Since 'say' strips out the '"' */ 902 903 break; 903 904 case POSE_TOKEN: 1.8.0/src/funmisc.c
r469 r489 578 578 else if (string_prefix("attribs", args[0])) 579 579 safe_str(list_attribs(), buff, bp); 580 else if (string_prefix("flags", args[0])) 581 safe_str(list_all_flags("FLAG", "", executor, 0x3), buff, bp); 582 else if (string_prefix("powers", args[0])) 583 safe_str(list_all_flags("POWER", "", executor, 0x3), buff, bp); 580 584 else 581 585 safe_str("#-1", buff, bp); … … 589 593 char save_ccom[BUFFER_LEN]; 590 594 char *cmdptr; 591 592 595 if (nargs == 1) { 593 596 thing = executor; … … 616 619 enum whichof_t { DO_FIRSTOF, DO_ALLOF }; 617 620 static void 618 do_whichof(char *args[], int nargs, enum whichof_t flag, char *buff, char **bp, 619 dbref executor, dbref caller, dbref enactor, PE_Info * pe_info) 621 do_whichof(char *args[], int nargs, enum whichof_t flag, 622 char *buff, char **bp, dbref executor, 623 dbref caller, dbref enactor, PE_Info * pe_info) 620 624 { 621 625 int j; … … 624 628 char sep = ' '; 625 629 int first = 1; 626 627 630 tbuf[0] = '\0'; 628 629 631 if (flag == DO_ALLOF) { 630 632 /* The last arg is a delimiter. Parse it in place. */ … … 632 634 char *isep = insep; 633 635 const char *arglast = args[nargs - 1]; 634 process_expression(insep, &isep, &arglast, executor, caller, enactor,635 PE_DEFAULT, PT_DEFAULT, pe_info);636 process_expression(insep, &isep, &arglast, executor, 637 caller, enactor, PE_DEFAULT, PT_DEFAULT, pe_info); 636 638 *isep = '\0'; 637 639 strcpy(args[nargs - 1], insep); 638 639 640 if (!delim_check(buff, bp, nargs, args, nargs, &sep)) 640 641 return; … … 645 646 tp = tbuf; 646 647 sp = args[j]; 647 process_expression(tbuf, &tp, &sp, executor, caller, enactor,648 PE_DEFAULT, PT_DEFAULT, pe_info);648 process_expression(tbuf, &tp, &sp, executor, caller, 649 enactor, PE_DEFAULT, PT_DEFAULT, pe_info); 649 650 *tp = '\0'; 650 651 if (parse_boolean(tbuf)) { … … 653 654 } else 654 655 first = 0; 655 656 656 safe_str(tbuf, buff, bp); 657 658 657 if (flag == DO_FIRSTOF) 659 658 return; … … 667 666 FUNCTION(fun_firstof) 668 667 { 669 do_whichof(args, nargs, DO_FIRSTOF, buff, bp, executor, caller, enactor,670 pe_info);668 do_whichof(args, nargs, DO_FIRSTOF, buff, bp, executor, 669 caller, enactor, pe_info); 671 670 } 672 671 … … 675 674 FUNCTION(fun_allof) 676 675 { 677 do_whichof(args, nargs, DO_ALLOF, buff, bp, executor, caller, enactor,678 pe_info);679 } 676 do_whichof(args, nargs, DO_ALLOF, buff, bp, executor, 677 caller, enactor, pe_info); 678 } 1.8.0/src/game.c
r487 r489 2229 2229 else if (string_prefix("attribs", arg)) 2230 2230 do_list_attribs(player, lc); 2231 else if (string_prefix("flags", arg)) 2232 do_list_flags("FLAG", player, "", lc, T("Flags")); 2233 else if (string_prefix("powers", arg)) 2234 do_list_flags("POWERS", player, "", lc, T("Powers")); 2231 2235 else 2232 2236 notify(player, T("I don't understand what you want to @list.")); 1.8.0/src/wiz.c
r483 r489 1950 1950 thing = noisy_match_result(executor, args[0], NOTYPE, MAT_OBJECTS); 1951 1951 } 1952 1953 if (!GoodObject(thing) || !Can_Examine(executor, thing)) { 1952 if (!GoodObject(thing)) { 1953 safe_str(T(e_match), buff, bp); 1954 return; 1955 } 1956 if (!Can_Examine(executor, thing)) { 1954 1957 safe_str(T(e_perm), buff, bp); 1955 1958 return; … … 1979 1982 else 1980 1983 thing = lookup_player(args[0]); 1981 if (!GoodObject(thing) || !Can_Examine(executor, thing)) { 1984 if (!GoodObject(thing) || !IsPlayer(thing)) { 1985 safe_str(T(e_match), buff, bp); 1986 return; 1987 } 1988 if (!Can_Examine(executor, thing)) { 1982 1989 safe_str(T(e_perm), buff, bp); 1983 1990 return; 1.8.0/win32/msvc.net/pennmush.vcproj
r479 r489 140 140 </File> 141 141 <File 142 RelativePath=".\src\sql.c"> 143 </File> 144 <File 145 RelativePath=".\src\bufferq.c"> 146 </File> 147 <File 142 148 RelativePath=".\src\cmdlocal.c"> 143 149 </File> … … 352 358 <File 353 359 RelativePath="hdrs\boolexp.h"> 360 </File> 361 <File 362 RelativePath="hdrs\sql.h"> 363 </File> 364 <File 365 RelativePath="hdrs\bufferq.h"> 354 366 </File> 355 367 <File
