Free Hero Mesh

Check-in [418cb4cce0]
Login
This is a mirror of the main repository for Free Hero Mesh. New tickets and changes will not be accepted at this mirror.
Overview
Comment:Change some variables from 8-bits to 16-bits for better compatibility with Hero Mesh
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 418cb4cce0e2c764dd285e0fa87a384389f42fe3
User & Date: user on 2020-12-21 23:44:05
Other Links: manifest | tags
Context
2020-12-22
04:56
Change class.doc to say that Image, Shape, and Shovable are now 16-bits check-in: 8d33f93627 user: user tags: trunk
2020-12-21
23:44
Change some variables from 8-bits to 16-bits for better compatibility with Hero Mesh check-in: 418cb4cce0 user: user tags: trunk
22:26
Add ':s' for memory allocation stats and change binding.doc to make some improvements check-in: 0c771447b3 user: user tags: trunk
Changes

Modified exec.c from [fd399e3ec1] to [42efb1ced4].

184
185
186
187
188
189
190
191

192
193
194
195
196
197
198
184
185
186
187
188
189
190

191
192
193
194
195
196
197
198







-
+








static inline void clear_inventory(void) {
  free(inventory);
  inventory=0;
  ninventory=0;
}

static inline Uint8 resolve_dir(Uint32 n,Uint32 d) {
static inline Uint8 resolve_dir(Uint32 n,Uint16 d) {
  return d<8?d:(objects[n]->dir+d)&7;
}

/*
  Working of animation: There are two separate animations, being logical
  and visual animations. New animations replace the current logical
  animation; if there isn't one, but there is a visual animation, then a

Modified heromesh.h from [c347f8ffc1] to [ec8cb61a20].

201
202
203
204
205
206
207
208

209
210
211

212
213
214
215
216
217
218
201
202
203
204
205
206
207

208
209
210

211
212
213
214
215
216
217
218







-
+


-
+







  AnimationStep step[0];
} Animation;

typedef struct {
  Sint32 height,weight,climb,density,volume,strength,arrivals,departures,temperature,inertia;
  Uint32 arrived,departed,arrived2,departed2,generation;
  Uint32 up,down,prev,next; // links to other objects
  Uint16 class,oflags,distance;
  Uint16 class,oflags,distance,shape,shovable,image;
  Uint16 sharp[4];
  Uint16 hard[4];
  Uint8 x,y,shape,shovable,image,dir;
  Uint8 x,y,dir;
  Animation*anim;
  Value misc1,misc2,misc3,misc4,misc5,misc6,misc7;
  Value uservars[0];
} Object;

// Some objects may remain in memory for animation purposes even after they have been
// destroyed. In this case, their "generation" value is zero, and they will always