PennMUSH Community

Changeset 1246

Show
Ignore:
Timestamp:
09/09/08 10:42:34 (3 months ago)
Author:
walker
Message:

cbufferadd() part two.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • 1.8.3/branches/devel/CHANGES.183

    r1244 r1246  
    5656   addition to the traditional two-argument form. Suggested by Impster, 
    5757   patch by Talvo. 
     58 * cbufferadd() - Add text to a channel buffer without broadcasting it. 
     59   Allows for @chan/recall on an @chat that's been overridden. 
    5860 
    5961Fixes: 
  • 1.8.3/branches/devel/game/txt/hlp/pennchat.hlp

    r1245 r1246  
    352352 
    353353  Adds text to a chan buffer without broadcasting it to all people on the 
    354   channel. In order to perform this, you must be able to peform an @nscemit. 
     354  channel. In order to perform this, you must be able to peform an @cemit. 
     355 
     356  If <spoof> is true, it will spoof the encator (%#), and you must be able 
     357  to perform an @nscemit. 
    355358& CWHO() 
    356359  cwho(<channel>) 
  • 1.8.3/branches/devel/src/extchat.c

    r1245 r1246  
    22732273 
    22742274  // Person must be able to do nospoof cemits. 
    2275   if (!command_check_byname(executor, "@nscemit") || 
     2275  if (!command_check_byname(executor, "@cemit") || 
    22762276      fun->flags & FN_NOSIDEFX) { 
    22772277    safe_str(T(e_perm), buff, bp); 
     
    22932293  victim = executor; 
    22942294  // Do we spoof somebody else? 
    2295   if (nargs == 3) { 
    2296     if ((victim = noisy_match_result(executor, args[2], NOTYPE, MAT_EVERYTHING)) 
    2297         < 0) { 
    2298       safe_str(T(e_notvis), buff, bp); 
    2299       return; 
    2300     } 
     2295  if (nargs == 3 && parse_boolean(args[2])) { 
     2296    // Person must be able to do nospoof cemits. 
     2297    if (!command_check_byname(executor, "@nscemit") || 
     2298        fun->flags & FN_NOSIDEFX) { 
     2299      safe_str(T(e_perm), buff, bp); 
     2300      return; 
     2301    } 
     2302    victim = enactor; 
    23012303  } 
    23022304 
     
    23102312    return; 
    23112313  default: 
    2312     if (ChanBufferQ(c) != NULL) { 
     2314    if (!Chan_Can_Cemit(c, executor)) { 
     2315      safe_str(T(e_perm), buff, bp); 
     2316    } else if (ChanBufferQ(c) != NULL) { 
    23132317      add_to_bufferq(ChanBufferQ(c), 0, victim, args[1]); 
    23142318    } else {