Jump to content

Photo

ghost.zh


  • Please log in to reply
645 replies to this topic

#316 Ben

Ben

    a very grumpy

  • Members

Posted 28 November 2013 - 02:17 AM

So if Ghost_Explode is being deprecated, ... well, too many scripts use it to remove it entirely. I hope it's still staying for backward-compatibility...


  • Evan20000 likes this

#317 Saffith

Saffith

    IPv7 user

  • Members

Posted 28 November 2013 - 02:45 AM

Yeah, I don't plan to remove those functions.


Wow, I missed, like, half of the last page somehow. Sorry I'm so late in replying. :P
 

I still need a way to make Link able to touch a ghosted enemy without being hurt (i.e. Link is not flashing, bounced back, and groaning.)

Any chance of a No_hurtFX command in the future? Is this even possible?

It wouldn't be completely impossible, but certainly difficult. I'll add it if I can think of a reasonable way to make it work.

 

I also note that any exploding death enemy leaves no drops. Is that because of this (in Ghost_Explode)?
Ghost_ClearCombos();
 
Is there a way to circumvent this?

Shoot, never thought of that. It's nothing to do with clearing the combo; it's because the enemy is actually killed by moving it far offscreen. If you replace
ghost->X=1024;
with
ghost->HP=-1000;
ghost->DrawXOffset=1000;
that should fix it.
 

What is the difference between Ghost_TileWidth/Ghost_TileHeight and the normal TileWidth/TileHeight? Does using the ghost version improve compatibility with the default movement patterns in the Enemy Editor or anything?

Ghost_Tile* are used internally when the size is needed, so some things won't work correctly if they're not set. Also, setting those affects both npc->Tile* and ffc->Tile*.
 

I'm asking because I'm just now realizing that the FFC BigEnemy script seems to completely fall apart regarding firing weapons (Spawn locations for eweapons are the edges of the top-left tile of the enemy sprite instead of the whole thing) and any of the 4-Frame 4_direction animations (Up/Down animations work. Left/Right and any firing animations do not), and I was hoping that there was a solution somewhere in this.

Not as easily as that, I'm afraid. Their behavior ha to be scripted to some extent to fix issues like those.

#318 Evan20000

Evan20000

    P͏҉ę͟w͜� ̢͝!

  • Members
  • Real Name:B̵̴̡̕a҉̵̷ņ̢͘͢͜n̷̷ę́͢d̢̨͟͞
  • Location:B̕҉̶͘͝a̶̵҉͝ǹ̵̛͘n̵e̸͜͜͢d҉̶

Posted 04 December 2013 - 01:45 AM

I dunno if this is known/has been reported, but Ghost_Explode behaves...oddly with the Z axis. I managed to find a workaround, but I figured it was worth bringing up.
  • Mero likes this

#319 Mero

Mero

    Touch Fluffy Tail

  • Banned
  • Real Name:Tamamo No Mae
  • Location:Rainbow Factory

Posted 05 December 2013 - 09:52 AM

Some of the zheader files are garbled when Loaded in a text editor.

If you could fix this that would be great.  :love:



#320 BigJoe

BigJoe

    It Moved

  • Members

Posted 05 December 2013 - 10:47 AM

EDIT: Disregard this. I had a wrong version of ghost.zh


Edited by BigJoe, 06 December 2013 - 03:18 PM.


#321 Mero

Mero

    Touch Fluffy Tail

  • Banned
  • Real Name:Tamamo No Mae
  • Location:Rainbow Factory

Posted 08 December 2013 - 03:59 PM

How would I go about make a weapon start with a step of 0 and gradually accelerate to a certain amount, also ewm_veer will not work here as I want it to accelerate at an angle.


Edited by Palpaleos, 08 December 2013 - 07:10 PM.


#322 Mero

Mero

    Touch Fluffy Tail

  • Banned
  • Real Name:Tamamo No Mae
  • Location:Rainbow Factory

Posted 08 December 2013 - 07:19 PM

We have a bug. When enemies are halting and being knocked back the counter doesn't decrement this cause one of my enemies to throw a shit ton of weapons right after another every frame it didn't break ZC thank god.



#323 Saffith

Saffith

    IPv7 user

  • Members

Posted 11 December 2013 - 12:22 PM

How would I go about make a weapon start with a step of 0 and gradually accelerate to a certain amount

EWL_SLOW_TO_HALT with a negative argument might work, but I'm not prepared to say I'll support that. Apart from that, I think you'll just have to adjust its step yourself.
 

We have a bug. When enemies are halting and being knocked back the counter doesn't decrement

To match the built-in behavior, it shouldn't. I think. Having trouble keeping track of which clk is which at the moment.
I'll add a note about it in the documentation, at least. And a function to see if the enemy's being knocked back. I'm surprised that's not in there already, actually.

#324 BigJoe

BigJoe

    It Moved

  • Members

Posted 16 December 2013 - 07:48 AM

EDIT: Once again, stupidity on my part. Disregard.


Edited by BigJoe, 16 December 2013 - 11:45 AM.


#325 Mero

Mero

    Touch Fluffy Tail

  • Banned
  • Real Name:Tamamo No Mae
  • Location:Rainbow Factory

Posted 20 December 2013 - 10:33 AM

To match the built-in behavior, it shouldn't. I think. Having trouble keeping track of which clk is which at the moment.
I'll add a note about it in the documentation, at least. And a function to see if the enemy's being knocked back. I'm surprised that's not in there already, actually.

 

Yeah clk, clk2, and clk3. What the hell was L thinking. Variables should have names that make sense not including comments that explain them. Once you figure them out you should definately add comments at the top that explain what each one is for. Only problem is that clk3 purpose varies from enemy to enemy. Tektites use them for direction while it's the movestatus counter for floaterWalk.

 

Also about EWM_VEER. I've noticed a few things. First is this intended for angular weapons only? Second it's direction is not updated every frame. Also Angular veer, is this possible to do?


Edited by Palpaleos, 20 December 2013 - 10:34 AM.


#326 Mero

Mero

    Touch Fluffy Tail

  • Banned
  • Real Name:Tamamo No Mae
  • Location:Rainbow Factory

Posted 06 January 2014 - 10:34 AM

How would I go about making a tall enemy be draw on the overhead layer on his top half and normal layer on his bottom half?



#327 Saffith

Saffith

    IPv7 user

  • Members

Posted 09 January 2014 - 03:47 PM

There's no built-in way to do that right now. You'd have to use drawing to fake it. I plan to add a drawing function to make things like that easier, but I haven't decided exactly how that will work.

#328 Mero

Mero

    Touch Fluffy Tail

  • Banned
  • Real Name:Tamamo No Mae
  • Location:Rainbow Factory

Posted 12 January 2014 - 12:01 PM

Well there's no good way to get the combos current frame. So you'll have to use Screen->DrawTile and Game->ComboTile. Another issue would be preventing the drawing commands from being queued when link dies. Only thing I can think of is passing the arguments into a global array and have a function after waitdraw do the actual drawing if Link is still alive.



#329 anikom15

anikom15

    Dictator

  • Banned
  • Real Name:Westley
  • Location:California, United States

Posted 16 January 2014 - 01:00 AM

Let's say I have an enemy that I don't really need AutoGhost for other than to have the cool explosion when it dies. Can I do this with Ghost? The enemy is already all set up and works the way I want without any scripts, so I just want to add the explosion effect.



#330 Saffith

Saffith

    IPv7 user

  • Members

Posted 17 January 2014 - 11:42 AM

Well there's no good way to get the combos current frame.

You don't need to. DrawCombo always draws the current frame.
 

Let's say I have an enemy that I don't really need AutoGhost for other than to have the cool explosion when it dies. Can I do this with Ghost? The enemy is already all set up and works the way I want without any scripts, so I just want to add the explosion effect.

Sure. This ought to do it.
ffc script DeathAnimation
{
    void run(int enemyID)
    {
        npc ghost=Ghost_InitAutoGhost(this, enemyID);
        while(true)
            Ghost_Waitframe2(this, ghost, 1, true);
    }
}



0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users