ucscriptop.h

Go to the documentation of this file.
00001 /*
00002  *  Ucscriptop.h - Usecode-script opcode definitions.
00003  *
00004  *  Copyright (C) 2000-2001  The Exult Team
00005  *
00006  *  This program is free software; you can redistribute it and/or modify
00007  *  it under the terms of the GNU General Public License as published by
00008  *  the Free Software Foundation; either version 2 of the License, or
00009  *  (at your option) any later version.
00010  *
00011  *  This program is distributed in the hope that it will be useful,
00012  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00013  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014  *  GNU General Public License for more details.
00015  *
00016  *  You should have received a copy of the GNU General Public License
00017  *  along with this program; if not, write to the Free Software
00018  *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
00019  */
00020 
00021 #ifndef _USCRIPTOP_H
00022 #define _USCRIPTOP_H
00023 
00024 /*
00025  *  Opcodes for Usecode_script's:
00026  */
00027 namespace Ucscript
00028 {
00029 enum Ucscript_ops
00030   {
00031   cont =    0x01,   // Continue without painting.
00032   repeat =  0x0b,   // Loop(offset, cnt).
00033   repeat2 = 0x0c,   // Loop(offset, cnt1, cnt2).
00034   nop =   0x21,   // Not sure about this.
00035   dont_halt = 0x23,   // Not right?
00036   delay_ticks = 0x27,   // Delay(ticks).
00037   delay_hours = 0x29,   // Delay nn game hours.
00038   finish =  0x2c,   // Finish script if killed.
00039   remove =  0x2d,   // Remove item & halt.
00040   step_n =  0x30,   // Step in given direction.
00041   step_ne =   0x31,
00042   step_e =  0x32,
00043   step_se = 0x33,
00044   step_s =  0x34,
00045   step_sw = 0x35,
00046   step_w =  0x36,
00047   step_nw = 0x37,
00048   descend = 0x38,   // Decr. lift.
00049   rise =    0x39,   // Incr. lift.
00050   frame =   0x46,   // Set_frame(frnum).
00051   egg =     0x48,   // Activate egg.
00052   next_frame_max =0x4d,   // Next frame, but stop at max.
00053   next_frame =  0x4e,   // Next frame, but wrap.
00054   prev_frame_min =0x4f,   // Prev frame, but stop at 0.
00055   prev_frame =  0x50,   // Prev. frame, but wrap.
00056   say =   0x52,   // Say(string).
00057   step =    0x53,   // Step(dir).
00058   music =   0x54,   // Play(track#).
00059   usecode = 0x55,   // Call usecode(fun).
00060   speech =  0x56,   // Speech(track#).
00061   sfx =   0x58,   // Sound_effect(#).
00062   face_dir =  0x59,   // Face_dir(dir), dir=0-7, 0=north.
00063   npc_frame = 0x61,   // 61-70:  Set frame, but w/ cur. dir.
00064   hit =   0x78,   // Hit(hps, ??).  Item attacked.
00065   /*
00066    *  These are (I think) not in the original: 
00067    */
00068   usecode2 =  0x80,   // Call usecode(fun, eventid).
00069   resurrect = 0x81    // Parm. is body.
00070   };
00071 }
00072 #endif

Generated on Mon Jul 9 14:42:52 2007 for ExultEngine by  doxygen 1.5.1