SPRITE Problems in my game, freed sprite problem.
Author |
Message |
RyGuy-Anime
|
Posted: Tue Jan 24, 2012 3:20 pm Post subject: SPRITE Problems in my game, freed sprite problem. |
|
|
What is it you are trying to achieve?
A "Blast Attack to go across the screen.. this is my first attempt at a game btw
What is the problem you are having?
it says i freed my sprite but i cannot find any lines where i've done it
Describe what you have tried to solve this problem
Anything i could think of
Post any relevant code (You may choose to attach the file instead of posting the code if it is too long)
process shoot
loop
location1 := locationx + 7
location2 := locationy + 10
%Sprite.SetPosition (lasersprite, location1, location2, false) %sets location vairables)
%Sprite.SetHeight (lasersprite, 3)
if blast = true then
if direction = 1 then
Sprite.Show (lasersprite)
loop
location1 := location1 - 7
Sprite.Show (lasersprite)
if location1 = a then
if location2 + 10 > b and location2 - 10 < b
then
hit := true
exit
end if
elsif location1 < -20 then
exit
end if
end loop
else
Sprite.Show (lasersprite)
loop
location1 := location1 + 7
Sprite.Show (lasersprite)
if room = 3 and location1 = a then
if location2 + 10 > b and location2 - 10 < b
then
hit := true
exit
end if
elsif location1 > 340 then
exit
end if
end loop
end if
end if
if ended = true then
%Sprite.Hide (lasersprite)
exit
end if
end loop
end shoot
Please specify what version of Turing you are using
4.1.1
Description: |
|
 Download |
Filename: |
Treason.zip |
Filesize: |
9.38 MB |
Downloaded: |
106 Time(s) |
|
|
|
|
|
 |
Sponsor Sponsor

|
|
 |
Dreadnought
|
Posted: Tue Jan 24, 2012 3:57 pm Post subject: Re: SPRITE Problems in my game, freed sprite problem. |
|
|
When you create a sprite it is associated with the window that was active at the time of its creation.
You may not realize it, but while you are loading sprites and pictures at the beginning of your program, the default window (window Id -1 I think) is considered active for Turing (even if you can't see it).
When you call the line
This creates a window that is different from the standard Turing window. So Turing creates a new window and closes the old one (even if you couldn't see it). And with closing that window all the sprites that were associated with it are freed.
A way of fixing this might be to place the setscreen statement earlier in the program or creating sprites later.
Hope this helps.
|
|
|
|
|
 |
RyGuy-Anime
|
Posted: Tue Jan 24, 2012 7:05 pm Post subject: Re: SPRITE Problems in my game, freed sprite problem. |
|
|
Thanks a ton although i find it weird since the rest of the sprites worked fine above the setscreen... I'd give you bits if i knew how . When i finish the beta version of the game i'll post it if anyone is interested, the only thing i need left is to get the blast attack moving...
|
|
|
|
|
 |
|
|