Free Hero Mesh

Check-in [f263eed6d9]
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:Cause visual animations of an object to reset the first time each turn that object sets a logical animation
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: f263eed6d9d02deab1685d6073af866ad417e2fb
User & Date: user on 2020-12-20 01:22:56
Other Links: manifest | tags
Context
2020-12-20
07:39
Add checks for OF_DESTROYED and OF_VISUALONLY flags of an object that is trying to move, at the necessary times check-in: 040a277835 user: user tags: trunk
01:22
Cause visual animations of an object to reset the first time each turn that object sets a logical animation check-in: f263eed6d9 user: user tags: trunk
2020-12-19
22:31
Add a message that game cannot continue with no objects check-in: f1435f4c66 user: user tags: trunk
Changes

Modified exec.c from [d24ac241a4] to [3b5e9774eb].

224
225
226
227
228
229
230

231
232
233
234
235
236
237
static void animate(Uint32 n,Uint32 f,Uint32 a0,Uint32 a1,Uint32 t) {
  Animation*an=objects[n]->anim;
  objects[n]->image=a0;
  f&=0x0B;
  if(!an) an=objects[n]->anim=animalloc();
  if(an->status&ANISTAT_SYNCHRONIZED) an->status=0;
  if(an->count==max_animation) f=ANI_STOP;

  if(f&(ANI_ONCE|ANI_LOOP)) {
    switch(an->status) {
      case 0:
        an->vtime=an->lstep=an->vstep=0;
        an->vimage=a0;
        break;
      case ANISTAT_LOGICAL:







>







224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
static void animate(Uint32 n,Uint32 f,Uint32 a0,Uint32 a1,Uint32 t) {
  Animation*an=objects[n]->anim;
  objects[n]->image=a0;
  f&=0x0B;
  if(!an) an=objects[n]->anim=animalloc();
  if(an->status&ANISTAT_SYNCHRONIZED) an->status=0;
  if(an->count==max_animation) f=ANI_STOP;
  if(!an->count && (an->status&ANISTAT_VISUAL)) an->status=0;
  if(f&(ANI_ONCE|ANI_LOOP)) {
    switch(an->status) {
      case 0:
        an->vtime=an->lstep=an->vstep=0;
        an->vimage=a0;
        break;
      case ANISTAT_LOGICAL: