Testing My Animated Character (Futa Warning)

Got a game you want to make or need help making? Go here!
Post Reply
User avatar
Biles
Slime
Slime
Posts: 47
Joined: March 29th, 2011, 6:28 pm
Contact:

Testing My Animated Character (Futa Warning)

Post by Biles » January 30th, 2012, 3:43 pm

I am learning the mechanics of a 2D platformer game so that I can make other Flash games in the future. On another forum that I'm a member of, I've been working and progressed through. I thought I'd share what I have here so I can get some good 'vibes' which will hopefully propel me forward and be able to create a real flash game for once.
The scripts is heavily based on MiM (Mario is Missing) and right now the big issue I have is getting the buttons to somehow work when they're in HUD form.

Link to my current flash in LoK
Need some basic Flash character animations? Then stop by at:
Biles' Animation Kit

User avatar
KiWolfGirl
Dealer
Dealer
Posts: 567
Joined: August 11th, 2010, 10:33 pm
Contact:

Re: Testing My Animated Character (Futa Warning)

Post by KiWolfGirl » January 30th, 2012, 5:05 pm

That is actually very good animation for what it is. Of course there are some code htings you need to work out, like not making the kick/punch stop when you let go of the button, and not being able to kick/punch again until the last one is finished. But the animation is very good for a puppet model and the character is cute! I hope that you will post updates here too. I am not currently availible but in the future some time i may be able to help with the programming if you need it. I am pretty good at both AS2 and AS3.
Awooooo!

User avatar
Biles
Slime
Slime
Posts: 47
Joined: March 29th, 2011, 6:28 pm
Contact:

Re: Testing My Animated Character (Futa Warning)

Post by Biles » January 30th, 2012, 8:34 pm

Actually, I was hoping someone here might help me out on finding a way to prevent the attack moves from spamming too much. I've animated the attacks so that punches are still quicker than kicks. Still I'm hoping in the future, I may want to add some random punches, kicks, and corresponding sounds that goes along with it.
Need some basic Flash character animations? Then stop by at:
Biles' Animation Kit

User avatar
KiWolfGirl
Dealer
Dealer
Posts: 567
Joined: August 11th, 2010, 10:33 pm
Contact:

Re: Testing My Animated Character (Futa Warning)

Post by KiWolfGirl » January 30th, 2012, 9:35 pm

Well if you make it so that they have to start and finish before you can attack again, i think you should be fine. You already have a full attack animation with them thta has a start up time (quicker with punch) and a cooldown time which i see by holding the button down. If you code it so that you press the button and must see all of this for every attack and cannot attack again until she goes back to stance, you should have no problem with attacks being spammed. Like i said i am very busy but I might be able to help you with the code for that if i could see what you were doing.
Awooooo!

User avatar
Yuni
Tentacle Swarm
Tentacle Swarm
Posts: 324
Joined: June 22nd, 2009, 12:13 pm
Location: The Furry Zone
Contact:

Re: Testing My Animated Character (Futa Warning)

Post by Yuni » January 30th, 2012, 9:42 pm

She looks very attractive, hun. :3 Very nice groundwork for the game so far. Welcome to the forum on this game, and I hope to see more of it. :3
"You're a squirrel who somehow has money, and sometimes swords and shields. I don't care if you're a cute bunny; I'll pwn your ass for realz!" -- Brentalfloss, to the FF victory theme

User avatar
Biles
Slime
Slime
Posts: 47
Joined: March 29th, 2011, 6:28 pm
Contact:

Re: Testing My Animated Character (Futa Warning)

Post by Biles » January 30th, 2012, 9:50 pm

Well the thing is, I'm more of a right-brainer which means coding and scripting hurts my left-brain in figuring syntax and stuff. I was lucky enough to deduce how things work, but there's a limit to what I can do so far. And I definitely had help so far.

Regarding the attacks, at the end of each punch and kick animations, I obviously put in a stop(); at the end of the frame as well as idle, jump, and crouch movie clips to which corresponding attacks come from. That way, when the user is holding the attack key button down, the sprite would run those movie clips and when letting go the button, they wouldn't tell a difference. What I would like to do is that when the user lifts the finger off the key, the attack animation plays out.
Yuni wrote: She looks very attractive, hun. :3 Very nice groundwork for the game so far. Welcome to the forum on this game, and I hope to see more of it. :3
Thanks, though for the time being, she's a prototype I'm using to work out a 2D platformer flash game engine I'm trying to create which I can then later use to make future games.
Need some basic Flash character animations? Then stop by at:
Biles' Animation Kit

User avatar
KiWolfGirl
Dealer
Dealer
Posts: 567
Joined: August 11th, 2010, 10:33 pm
Contact:

Re: Testing My Animated Character (Futa Warning)

Post by KiWolfGirl » January 30th, 2012, 10:29 pm

Yeah, i am saying the same thing, but i couldnt really tell you how to do it without seeing what code you have on it now. Also are you using actiosncript 2 or actionscript 3?
Awooooo!

User avatar
Majicfriend
Big Slime
Big Slime
Posts: 68
Joined: July 8th, 2009, 7:38 pm
Contact:

Re: Testing My Animated Character (Futa Warning)

Post by Majicfriend » January 30th, 2012, 10:51 pm

Its good so far. The animation is attractive and smooth. The options are good. Really not much else to say other than this seems promising.

User avatar
Biles
Slime
Slime
Posts: 47
Joined: March 29th, 2011, 6:28 pm
Contact:

Re: Testing My Animated Character (Futa Warning)

Post by Biles » January 31st, 2012, 12:29 am

It's actually AS2. This is the main script of my main character sprite so far:

(ascii codes for directionals)

37=left
38=up
39=right
40=down

Code: Select all

onClipEvent (load)
{
   var ground = _root.ground;//removes the need to add _root. when referencing ground (I guess?)
   var ceiling = _root.ceiling;
   var obstacle = _root.obstacle;
   var grav = 0;
   var gravity = 2;
   var maxJump = -24;
   var speed = 10;
   var touchingGround = false;
   var touchingObstacle = false;
   char._x = _root.CheckpointX[_root.Checkpoint];//move character to default checkpoint to start
   char._y = _root.CheckpointY[_root.Checkpoint];//move character to default checkpoint to start
}
onClipEvent (enterFrame)
{
   if (_root.movement)
   {
      setProperty("", _y, _y+grav);
      for (grav=grav+gravity; (ground.hitTest(_x, _y, true) | obstacle.hitTest(_x, _y,true)); grav=0)
      {
         setProperty("", _y, _y-gravity);
      }
      if ((ground.hitTest(_x, _y+5, true)) | (obstacle.hitTest(_x, _y+5, true)))
      {//if the character falls through the ground, increase the 5, decrease reduces hovering
         touchingGround = true;
		 touchingObstacle = true;
      }
      else
      {
         touchingGround = false;
		 touchingObstacle = false;
      }
	  if (Key.isDown(39)) //Right//
      {
         setProperty("", _x, _x+speed); //Right Speed//
         right = true;
         if (Key.isDown(40) & (touchingGround | touchingObstacle)) //Squat//
         {
             speed = 3;
			 _root.Vicka.vickachar.gotoAndStop(8); //Right Crawl//
         }
         else if (Key.isDown(16) & (touchingGround | touchingObstacle)) //Run//
		 {
			 speed = 20;
			 _root.Vicka.vickachar.gotoAndStop(11); //Right Run//
			 if (Key.isDown(38)) //Right Run Jump//
			 {
				 speed = 15;
			 }
		 }
		 else if (!touchingGround & !touchingObstacle) //Mid air leaping right//
		 {
			 if (Key.isDown(65)) //Kick//
			 {
				_root.Vicka.vickachar.gotoAndStop(15); //Right Jump Kick//
			 }
			 else if (Key.isDown(83)) //Punch//
			 {
				_root.Vicka.vickachar.gotoAndStop(21); //Right Jump Punch//
			 }
			 else
			 {
			 	_root.Vicka.vickachar.gotoAndStop(5); //Right Jump//
			 }
		 }
		 else
         {
             speed = 10
			 _root.Vicka.vickachar.gotoAndStop(2); //Right Walk//
         }
      }
      else if (right) //Right Face//
      {
         if (Key.isDown(40) & (touchingGround | touchingObstacle)) //Squat//
         {
			 if (Key.isDown(65)) //Kick//
			 {
				_root.Vicka.vickachar.gotoAndStop(17); //Right Swoop Kick//
			 }
			 else if (Key.isDown(83)) //Punch//
			 {
				_root.Vicka.vickachar.gotoAndStop(23); //Right Sucker Punch//
			 }
			 else
			 {
			 	_root.Vicka.vickachar.gotoAndStop(7); //Right Squat//
			 }
         }
         else if (Key.isDown(65)) //Kick//
		 {
			 if (!touchingGround | !touchingObstacle)
			 {
			 	_root.Vicka.vickachar.gotoAndStop(15); //Right Jump Kick//
			 }
			 else
			 {
				_root.Vicka.vickachar.gotoAndStop(13); //Right Kick//
			 }
		 }
		 else if (Key.isDown(83)) //Punch//
         {
			 if (!touchingGround & !touchingObstacle)
			 {
				_root.Vicka.vickachar.gotoAndStop(21); //Right Jump Punch//
			 }
			 else
			 {
				_root.Vicka.vickachar.gotoAndStop(19); //Right Punch//
			 }
         }
		 else if (!touchingGround | !touchingObstacle) //Mid air facing right//
		 {
			_root.Vicka.vickachar.gotoAndStop(5); //Right Jump//
		 }
		 else
         {
			 _root.Vicka.vickachar.gotoAndStop(1); //Right Stand//
         }
      }
      if (Key.isDown(37)) //Left//
      {
         setProperty("", _x, _x-speed); //Left Speed//
         right = false;
         if (Key.isDown(40) & (touchingGround | touchingObstacle)) //Squat//
         {
             speed = 3;
			 _root.Vicka.vickachar.gotoAndStop(10); //Left Crawl//
         }
         else if (Key.isDown(16) & (touchingGround | touchingObstacle)) //Jump//
		 {
			 speed = 20;
			 _root.Vicka.vickachar.gotoAndStop(12); //Left Run//
			 if (Key.isDown(38))
			 {
				 speed = 15; //Left Run Jump//
			 }
		 }
		 else if (!touchingGround & !touchingObstacle) //Mid air leaping left//
		 {
			 if (Key.isDown(65)) //Kick//
			 {
				_root.Vicka.vickachar.gotoAndStop(16); //Left Jump Kick//
			 }
			 else if (Key.isDown(83)) //Punch//
			 {
				_root.Vicka.vickachar.gotoAndStop(22); //Left Jump Punch//
			 }
			 else
			 {
				 _root.Vicka.vickachar.gotoAndStop(6); //Left Jump//
			 }
		 }
		 else
         {
             speed = 10
			 _root.Vicka.vickachar.gotoAndStop(4); //Left Walk//
         }
      }
      else if (!right) //Left Face//
      {
         if (Key.isDown(40) & (touchingGround | touchingObstacle)) //Left Squat//
         {
			 if (Key.isDown(65)) //Kick//
			 {
				_root.Vicka.vickachar.gotoAndStop(18); //Left Swoop Kick//
			 }
			 else if (Key.isDown(83)) //Punch//
			 {
				_root.Vicka.vickachar.gotoAndStop(24); //Left Sucker Punch//
			 }
			 else
			 {
				 _root.Vicka.vickachar.gotoAndStop(9); //Left Squat//
			 }
         }
         else if (Key.isDown(65)) //Kick//
		 {
			 if (!touchingGround | !touchingObstacle)
			 {
			 	_root.Vicka.vickachar.gotoAndStop(16); //Left Jump Kick//
			 }
			 else
			 {
				_root.Vicka.vickachar.gotoAndStop(14); //Left Kick//
			 }
		 }
		 else if (Key.isDown(83)) //Punch//
         {
			 if (!touchingGround | !touchingObstacle)
			 {
				_root.Vicka.vickachar.gotoAndStop(22); //Left Jump Punch//
			 }
			 else
			 {
				_root.Vicka.vickachar.gotoAndStop(20); //Left Punch//
			 }
         }
		 else if (!touchingGround & !touchingObstacle) //Mid air facing left//
		 {
			_root.Vicka.vickachar.gotoAndStop(6); //Left Jump//
		 }
		 else
         {
			 _root.Vicka.vickachar.gotoAndStop(3); //Left Stand//
         }
      }
      if (Key.isDown(38) & (touchingGround | touchingObstacle)) //Jump offground//
      {
         grav = maxJump;
         gotoAndPlay("jump")
      }
	  if ((ground.hitTest(_x+_width/4, _y-_height/4, true)) | (obstacle.hitTest(_x+_width/4, _y-_height/4, true)) | (ceiling.hitTest(_x+_width/4, _y-_height/4, true)))
      {
         setProperty("", _x, _x-speed); //Right Collision//
      } 
      if ((ground.hitTest(_x-_width/4, _y-_height/4, true)) | (obstacle.hitTest(_x-_width/4, _y-_height/4, true)) | (ceiling.hitTest(_x-_width/4, _y-_height/4, true)))
      {
         setProperty("", _x, _x+speed); //Left Collision//
         _root.HUD._x = _x-145;//the 145 is arbitrary to place the HUD properly in the vCam
      } 
      if ((obstacle.hitTest(_x, _y-_height, true)) | (ceiling.hitTest(_x, _y-_height, true))) //Ceiling Collision//
      {
         grav=15
      } 
   } 
}
BTW, does the flash tag work on this forum? I noticed it's available but could never get it to work -.-
Need some basic Flash character animations? Then stop by at:
Biles' Animation Kit

User avatar
KiWolfGirl
Dealer
Dealer
Posts: 567
Joined: August 11th, 2010, 10:33 pm
Contact:

Re: Testing My Animated Character (Futa Warning)

Post by KiWolfGirl » January 31st, 2012, 3:31 pm

I took a really quick look at it for now, when I am not so busy, I will look at it more. I suggest one thing that you dont say gotoandPlay/Stop frame numbers and instead use frame labels so in case your timeline changes, you will not have to go back and change all those numbers again. Those are really easy to use. Also i see that your punches and kicks work on if key is down on enterframe which is why they are stopping when you let go of the button. Instead you should write functions for attacks that dont occur on enterframe and trigger those functions when you press the punch and kick buttons. I can make an example for you probably later this week.
Awooooo!

User avatar
Biles
Slime
Slime
Posts: 47
Joined: March 29th, 2011, 6:28 pm
Contact:

Re: Testing My Animated Character (Futa Warning)

Post by Biles » January 31st, 2012, 6:02 pm

Great, I'm looking forward to seeing those examples this week.
Need some basic Flash character animations? Then stop by at:
Biles' Animation Kit

User avatar
Biles
Slime
Slime
Posts: 47
Joined: March 29th, 2011, 6:28 pm
Contact:

Re: Testing My Animated Character (Futa Warning)

Post by Biles » February 3rd, 2012, 9:49 am

Just to let you know, I'll be making further updates from this link:

http://legendofkrystal.com/forum/viewto ... f=7&t=1886
Need some basic Flash character animations? Then stop by at:
Biles' Animation Kit

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest