Uurdin ARedBearTest(Script)
		
		
		
		
		
		Jump to navigation
		Jump to search
		
		
	
| CoffeeMUD | 
|---|
| Administrator Builder Player | 
| =CoffeeMUD Builder Information= | |||
|---|---|---|---|
| Basics | Praetor Player Support Commands Zapper Masks | Advanced | Races Classes Abilities Socials Scripting | 
| Building | Behaviors Properties Areas Rooms Exits Items Mobs | Systems | Achievements Crafting Help Info Ships Planes of Existence Quests Triumphs | 
A Red Bear Test
This script is an example of how to change a word (red) to another word (Orange) located somewhere in the display of a target.
Display Word Switch
#uurdin_aredbeartest.script
speech_prog p testnow
  mpcallfunc DisplayWordSwitch "red" "Orange"
~
function_prog DisplayWordSwitch
  mpsetvar $i VAR_DISPLAY_NEW
  mpsetvar $i VAR_DISPLAY_OLD_LENGTH $%GSTAT($i display)%.LENGTH#
  mpsetvar $i VAR_DISPLAY_OLD_LENGTH --
  #the above must subtract 1 from length due to 0 start in loop below
  #mpecho length of display is: $<$i VAR_DISPLAY_OLD_LENGTH>
  for $0 = 0 to '$<$i VAR_DISPLAY_OLD_LENGTH>'
    #mpecho $0 and $%GSTAT($i display)%.$0
    if eval($0 == '$<$i VAR_DISPLAY_OLD_LENGTH>')
      #the above if checks for the last word in the mobs display
      #this is the only one that will be checked using the strcontains since it ignores punctuation
      #and normally the last word has a period at the end.
      if strcontains('$%GSTAT($i display)%.$0' $g.0)
        mpsetvar $i VAR_DISPLAY_NEW $<$i VAR_DISPLAY_NEW> $g.1
      else
        mpsetvar $i VAR_DISPLAY_NEW $<$i VAR_DISPLAY_NEW> $%GSTAT($i display)%.$0
      endif
    else
      if eval('$%GSTAT($i display)%.$0' == $g.0)
        mpsetvar $i VAR_DISPLAY_NEW $<$i VAR_DISPLAY_NEW> $g.1
      else
        if eval('$%GSTAT($i display)%.$0' == 'a')
          mpsetvar $i VAR_DISPLAY_NEW $<$i VAR_DISPLAY_NEW> a(n)
        else
          mpsetvar $i VAR_DISPLAY_NEW $<$i VAR_DISPLAY_NEW> $%GSTAT($i display)%.$0
        endif
      endif
    endif 
  next
  mpgset $i display $<$i VAR_DISPLAY_NEW>
~
Notes
.