Script Classes for Adventure Games/Avoider Class

From SCI Wiki
Jump to: navigation, search

Official SCI Documentation

Chapter: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14
15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | Index


The Avoider Class

Author: Jeff Stephenson

Date: 5 April 1988

 


The Avoider Class

The Avoider class is a class which helps Actors get around obstacles. If an Avoider is installed in avoider in an Actor, it gets called instead of the usual motion class when it is time to move the object. The Avoider then calls the motion and checks to see if the Actor was able to move. If the Actor is blocked by something ((client isBlocked:) is TRUE), the Avoider takes over and attempts to get around whatever is blocking the Actor. In some cases it looks really smart, in others astoundingly stupid. As we work on it, it should get better.

In file: motion.sc
Inherits from: Object
Inherited by: none



Properties


client

The Actor to whom this Avoider is assigned.



heading

The direction (clockwise or counter-clockwise) in which the Avoider turns while trying to get around the obstacle. This is picked randomly when the Actor first encounters the obstacle and remains constant as long as the Avoider is in control. The Avoider attempts to get around the obstacle by turning in 45 degree increments in the chosen direction until it is able to move.

 

Notes


 

Table of Contents

 

< Previous: The Motion Classes Next: The Event Class >