Jump to content

BuildingScenariosSamples: Difference between revisions

From The Battle for Wesnoth Wiki
Aethaeryn (talk | contribs)
m categorizing
No edit summary
Line 22: Line 22:
     [/filter]
     [/filter]
     [message]
     [message]
    id=tough_fight_ogre
     speaker=second_unit
     speaker=second_unit
     message= _ "Whew! That was a tough fight!"
     message= _ "Whew! That was a tough fight!"
Line 28: Line 27:
   [/event]
   [/event]


Konrad remarks that he is scared at the start of a scenario: (Note the difference between the speaker= and the
Konrad remarks that he is scared at the start of a scenario:
description= attributes in the two examples).


   [event]
   [event]
   name=start
   name=start
     [message]
     [message]
     id=konrad_scared
     speaker=Konrad
    description=Konrad
     message= _ "I feel uneasy about this place"
     message= _ "I feel uneasy about this place"
     [/message]
     [/message]
Line 45: Line 42:
   name=victory
   name=victory
     [message]
     [message]
    id=which_way
     speaker=narrator
     speaker=narrator
     message= _ "Which way do you wish to go?"
     message= _ "Which way do you wish to go?"
       [option]
       [option]
      id=go_north
       message= _ "North"
       message= _ "North"
         [command]
         [command]
Line 59: Line 54:
       [/option]
       [/option]
       [option]
       [option]
      id=go_south
       message= _ "South"
       message= _ "South"
         [command]
         [command]
Line 79: Line 73:
     [if]
     [if]
       [have_unit]
       [have_unit]
       description=Fred
       id=Fred
       [/have_unit]
       [/have_unit]
       [then]
       [then]
         [message]
         [message]
         description=Fred
         speaker=Fred
         message= _ "I must go now, friends, but will return later!"
         message= _ "I must go now, friends, but will return later!"
         [/message]
         [/message]
         [kill]
         [kill]
         description=Fred
         id=Fred
         [/kill]
         [/kill]
         [set_variable]
         [set_variable]
Line 112: Line 106:
         [unit]
         [unit]
         type=Peasant
         type=Peasant
         description=Fred
         id=Fred
        name= _ "Fred"
         side=1
         side=1
         x=8
         x=8
Line 118: Line 113:
         [/unit]
         [/unit]
         [message]
         [message]
         description=Fred
         speaker=Fred
         message= _ "I have returned to aid you friends!"
         message= _ "I have returned to aid you friends!"
         [/message]
         [/message]
Line 124: Line 119:
       [else]
       [else]
         [message]
         [message]
         description=Konrad
         speaker=Konrad
         message= _ "I wish Fred were still alive. He would know what to do!"
         message= _ "I wish Fred were still alive. He would know what to do!"
         [/message]
         [/message]
Line 146: Line 141:
   [/message]
   [/message]


  [teleport]
    [filter]
      name=Garcimore
    [/filter]
    x=10
    y=20
  [/teleport]


== See Also ==
== See Also ==

Revision as of 21:13, 23 December 2011

This page contains basic examples of WML. For more examples, you can look at the data of Wesnoth using a text editor.

to flash the screen red for a moment, we might go,

 [colour_adjust]
 red=200
 [/colour_adjust]
 [delay]
 time=20
 [/delay]
 [colour_adjust]
 red=0
 [/colour_adjust]

A unit remarking what a tough fight it was when they kill an Ogre:

 [event]
 name=die
   [filter]
   type=Ogre
   [/filter]
   [message]
   speaker=second_unit
   message= _ "Whew! That was a tough fight!"
   [/message]
 [/event]

Konrad remarks that he is scared at the start of a scenario:

 [event]
 name=start
   [message]
   speaker=Konrad
   message= _ "I feel uneasy about this place"
   [/message]
 [/event]

A selection of which way they should go at the end of a scenario:

 [event]
 name=victory
   [message]
   speaker=narrator
   message= _ "Which way do you wish to go?"
     [option]
     message= _ "North"
       [command]
         [endlevel]
         result=victory
         next_scenario="Northern Advance"
         [/endlevel]
       [/command]
     [/option]
     [option]
     message= _ "South"
       [command]
         [endlevel]
         result=victory
         next_scenario="Southern Citadel"
         [/endlevel]
       [/command]
     [/option]
   [/message]
 [/event]

Suppose you want to make it so that if a certain character, we will call him Fred the Peasant, survives in a certain scenario, he will leave, but return in a later scenario. We can do this in the first scenario:

 [event]
   name=victory
   [if]
     [have_unit]
     id=Fred
     [/have_unit]
     [then]
       [message]
       speaker=Fred
       message= _ "I must go now, friends, but will return later!"
       [/message]
       [kill]
       id=Fred
       [/kill]
       [set_variable]
       name=fred_is_alive
       value=yes
       [/set_variable]
     [/then]
    [/if]
 [/event]

This makes it so that if Fred is alive, he says something, then is removed from the game, and the variable 'fred_is_alive' is set to yes.

In a later scenario, we can use the following code:

 [event]
   name=turn 7
   [if]
     [variable]
     name=fred_is_alive
     equals=yes
     [/variable]
     [then]
       [unit]
       type=Peasant
       id=Fred
       name= _ "Fred"
       side=1
       x=8
       y=1
       [/unit]
       [message]
       speaker=Fred
       message= _ "I have returned to aid you friends!"
       [/message]
     [/then]
     [else]
       [message]
       speaker=Konrad
       message= _ "I wish Fred were still alive. He would know what to do!"
       [/message]
     [/else]
   [/if]
 [/event]

If the variable 'fred_is_alive' equals 'yes' then this will create a unit, Fred, a Peasant, at (8,1), and he will give a greeting message. Otherwise, Konrad will lament Fred being dead.

Suppose the player has just come across some undead, you might like to find if the player has a unit that would truly hate the undead, and if so, and get it to say something:

 [role]
 role=undead_hater
 type=Mage of Light,Paladin,White Mage
 [/role]
 [message]
 role=undead_hater
 message= _ "The foul hordes of the undead approach, this battle will surely be tough!"
 [/message]


See Also