| Final part on my game to bring it together 
 
	 
	
		| Author | Message |   
		| SaintK 
 
 
 
 
 | 
			
				|  Posted: Wed Jan 13, 2010 8:35 am    Post subject: Final part on my game to bring it together |  |   
				| 
 |  
				| Okey im nearly done, a few days til this is due but I am close to finish anyway, to get it all done I require my character (who can rotate) to be able to shoot from his pistol in whatever position he may be so would it be either tied to trig of the character or by itself? Thx for the help in advance. ;D |  
				|  |  |   
		|  |  |  
	  
		|  |   
		| Sponsor Sponsor
 
  
   |  |   
		|  |   
		| Ktomislav 
 
  
 
 
 | 
			
				|  Posted: Wed Jan 13, 2010 12:59 pm    Post subject: Re: Final part on my game to bring it together |  |   
				| 
 |  
				| Post your code.. |  
				|  |  |   
		|  |  |  
	  
		|  |   
		| TerranceN 
 
 
 
 
 | 
			
				|  Posted: Wed Jan 13, 2010 3:45 pm    Post subject: RE:Final part on my game to bring it together |  |   
				| 
 |  
				| The bullet's angle would be independent of the character's angle, but the bullet's angle would be set to the value of the character's angle at the moment the bullet is fired. 
 I think thats what you're asking, if not, provide more details or post your code.
 |  
				|  |  |   
		|  |  |  
	  
		|  |   
		| SaintK 
 
 
 
 
 | 
			
				|  Posted: Thu Jan 14, 2010 9:06 am    Post subject: Re: Final part on my game to bring it together |  |   
				| 
 |  
				| okey here it is 
 setscreen ("graphics:max;max,nocursor,nobuttonbar")
 View.Set ("offscreenonly")
 var temp : string (1)
 var mouseX, mouseY, button, charX, charY, character, oldCharacter, reticle : int
 var angle, dx, dy : real
 var key : array char of boolean
 charX := 300
 charY := 300
 loop
 Mouse.Where (mouseX, mouseY, button)
 character := Pic.FileNew ("shooter.bmp")
 reticle := Pic.FileNew ("reticle.bmp")
 charX := charX
 charY := charY
 dx := mouseX - charX
 dy := mouseY - charY
 const centX := Pic.Width (character) div 2
 const centY := Pic.Height (character) div 2
 
 
 % Movement of the character
 Input.KeyDown (key)
 Pic.Draw (character, charX, charY, picMerge)
 if key (KEY_UP_ARROW) then
 charY := charY + 5
 Pic.Draw (character, charX, charY, picMerge)
 end if
 if key (KEY_RIGHT_ARROW) then
 charX := charX + 5
 Pic.Draw (character, charX, charY, picMerge)
 end if
 if key (KEY_LEFT_ARROW) then
 charX := charX - 5
 Pic.Draw (character, charX, charY, picMerge)
 end if
 if key (KEY_DOWN_ARROW) then
 charY := charY - 5
 Pic.Draw (character, charX, charY, picMerge)
 end if
 
 
 % Rotation of the character
 if dx = 0 and dy > 0 then
 oldCharacter := character
 character := Pic.Rotate (character, 90, centX, centY)
 cls
 Pic.Draw (character, charX, charY, picMerge)
 Pic.Free (oldCharacter)
 Pic.Draw (reticle, mouseX, mouseY, picMerge)
 elsif dx = 0 and dy < 0 then
 oldCharacter := character
 character := Pic.Rotate (character, 270, centX, centY)
 cls
 Pic.Draw (character, charX, charY, picMerge)
 Pic.Free (oldCharacter)
 Pic.Draw (reticle, mouseX, mouseY, picMerge)
 else
 angle := arctand (dy / dx)
 if dx > 0 and dy > 0 then % top right
 oldCharacter := character
 character := Pic.Rotate (character, round (angle), centX, centY)
 cls
 Pic.Draw (character, charX, charY, picMerge)
 Pic.Free (oldCharacter)
 Pic.Draw (reticle, mouseX, mouseY, picMerge)
 elsif dx < 0 and dy > 0 then % top left
 oldCharacter := character
 character := Pic.Rotate (character, round (angle) + 180, centX, centY)
 cls
 Pic.Draw (character, charX, charY, picMerge)
 Pic.Free (oldCharacter)
 Pic.Draw (reticle, mouseX, mouseY, picMerge)
 elsif dx < 0 and dy < 0 then % bottom left
 oldCharacter := character
 character := Pic.Rotate (character, round (angle) + 180, centX, centY)
 cls
 Pic.Draw (character, charX, charY, picMerge)
 Pic.Free (oldCharacter)
 Pic.Draw (reticle, mouseX, mouseY, picMerge)
 elsif dx > 0 and dy < 0 then % bottom right
 oldCharacter := character
 character := Pic.Rotate (character, round (angle), centX, centY)
 cls
 Pic.Draw (character, charX, charY, picMerge)
 Pic.Free (oldCharacter)
 Pic.Draw (reticle, mouseX, mouseY, picMerge)
 end if
 end if
 View.Update
 cls
 end loop
 |  
				|  |  |   
		|  |  |  
	  
		|  |   
		| SaintK 
 
 
 
 
 | 
			
				|  Posted: Thu Jan 14, 2010 9:14 am    Post subject: Re: Final part on my game to bring it together |  |   
				| 
 |  
				| here are the images if needed 
 
 
 
	
		
	 
		| Description: |  |  Download
 |  
		| Filename: | images.zip |  
		| Filesize: | 693 Bytes |  
		| Downloaded: | 86 Time(s) |  
 |  
				|  |  |   
		|  |  |  
	  
		|  |   
		| Ktomislav 
 
  
 
 
 | 
			
				|  Posted: Thu Jan 14, 2010 11:43 am    Post subject: Re: Final part on my game to bring it together |  |   
				| 
 |  
				| Why did you put this in a loop? By doing so you will get an error pretty soon. 
 
 That what you are doing with oldCraracter is uselss. oldCharacter contains the original shooter.bmp picture all the time. Wouldn't it be easier if you defined it as a constanat or declare it outside of the main loop and not change it?
 |  
				|  |  |   
		|  |  |  
	  
		|  |   
		| Turing_Gamer 
 
  
 
 
 | 
			
				|  Posted: Thu Jan 14, 2010 11:46 am    Post subject: Re: Final part on my game to bring it together |  |   
				| 
 |  
				| You have to do a bit of trig, Math.Distance, and arrays. The first two I don't know how to do
 |  
				|  |  |   
		|  |  |  
	  
		|  |   
		|  |  
 |