more & more questions...I mean, I did something like this...
task mainTask{
loop{
if(Season==1){FireSign("First");}
else if(Season==2){WaterSign("Fifth");}
if(Season2==1){FireSign("Second");}
else if(Season2==2){WaterSign("Sixth");}
if(Season3==1){FireSign("Third");}
else if(Season3==2){WaterSign("Seventh");}
if(Season4==1){FireSign("Fourth");}
else if(Season4==2){WaterSign("Eighth");}
yield;
}
}
task FireSign(position){
let hfire = Obj_Create(OBJ_EFFECT);
Obj_SetAlpha(hfire, 200);
ObjEffect_SetTexture(hfire, imgSprite);
ObjEffect_SetRenderState(hfire, ALPHA);
ObjEffect_SetLayer(hfire, 1);
ObjEffect_SetPrimitiveType(hfire, PRIMITIVE_TRIANGLEFAN);
ObjEffect_CreateVertex(hfire, 4);
ObjEffect_SetVertexUV(hfire, 0, 106, 152);
ObjEffect_SetVertexUV(hfire, 1, 119, 152);
ObjEffect_SetVertexUV(hfire, 2, 119, 165);
ObjEffect_SetVertexUV(hfire, 3, 106, 165);
if(position=="First"){
while(!Obj_BeDeleted(hfire)){
ObjEffect_SetVertexXY(hfire,0,GetPlayerX-oxp2-
7,GetPlayerY+oyp3-7);
ObjEffect_SetVertexXY(hfire,1,GetPlayerX-
oxp2+7,GetPlayerY+oyp3-7);
ObjEffect_SetVertexXY(hfire,2,GetPlayerX-
oxp2+7,GetPlayerY+oyp3+7);
ObjEffect_SetVertexXY(hfire,3,GetPlayerX-oxp2-
7,GetPlayerY+oyp3+7);
if(GetKeyState(VK_SLOWMOVE)==KEY_PUSH ||
GetKeyState(VK_SLOWMOVE)==KEY_HOLD){
if(count%6 == 3){
i=2;
while(i<=2){
CreatePlayerShot01(GetPlayerX()-
oxp2, GetPlayerY()+oyp3-7, 20, 275, 4.0, 1, 1);
i++
}
}
}else{
if(count%8 == 4){
i=2;
while(i<=2){
CreatePlayerShot01(GetPlayerX()-
oxp2, GetPlayerY()+oyp3-7, 20, 275, 4.0, 1, 1);
i++;
}
}
}
yield;
}
}if(position=="Second"){
while(!Obj_BeDeleted(hfire)){
ObjEffect_SetVertexXY(hfire,0,GetPlayerX+oxp2-
7,GetPlayerY+oyp3-7);
ObjEffect_SetVertexXY
(hfire,1,GetPlayerX+oxp2+7,GetPlayerY+oyp3-7);
ObjEffect_SetVertexXY
(hfire,2,GetPlayerX+oxp2+7,GetPlayerY+oyp3+7);
ObjEffect_SetVertexXY(hfire,3,GetPlayerX+oxp2-
7,GetPlayerY+oyp3+7);
if(GetKeyState(VK_SLOWMOVE)==KEY_PUSH ||
GetKeyState(VK_SLOWMOVE)==KEY_HOLD){
if(count%6 == 3){
i=2;
while(i<=2){
CreatePlayerShot01(GetPlayerX()
+oxp2, GetPlayerY()+oyp3-7, 20, 265, 4.0, 1, 1);
i++
}
}
}else{
if(count%8 == 4){
i=2;
while(i<=2){
CreatePlayerShot01(GetPlayerX()
+oxp2, GetPlayerY()+oyp3-7, 20, 265, 4.0, 1, 1);
i++;
}
}
}
yield;
}
}if(position=="Third"){
while(!Obj_BeDeleted(hfire)){
ObjEffect_SetVertexXY(hfire,0,GetPlayerX-oxp-
7,GetPlayerY+oyp2-7);
ObjEffect_SetVertexXY(hfire,1,GetPlayerX-
oxp+7,GetPlayerY+oyp2-7);
ObjEffect_SetVertexXY(hfire,2,GetPlayerX-
oxp+7,GetPlayerY+oyp2+7);
ObjEffect_SetVertexXY(hfire,3,GetPlayerX-oxp-
7,GetPlayerY+oyp2+7);
if(GetKeyState(VK_SLOWMOVE)==KEY_PUSH ||
GetKeyState(VK_SLOWMOVE)==KEY_HOLD){
if(count%6 == 3){
i=2;
while(i<=2){
CreatePlayerShot01(GetPlayerX()-
oxp, GetPlayerY()+oyp2-7, 20, 276, 4.0, 1, 1);
i++
}
}
}else{
if(count%8 == 4){
i=2;
while(i<=2){
CreatePlayerShot01(GetPlayerX()-
oxp, GetPlayerY()+oyp2-7, 20, 276, 4.0, 1, 1);
i++;
}
}
}
yield;
}
}if(position=="Fourth"){
while(!Obj_BeDeleted(hfire)){
ObjEffect_SetVertexXY(hfire,0,GetPlayerX+oxp-
7,GetPlayerY+oyp2-7);
ObjEffect_SetVertexXY
(hfire,1,GetPlayerX+oxp+7,GetPlayerY+oyp2-7);
ObjEffect_SetVertexXY
(hfire,2,GetPlayerX+oxp+7,GetPlayerY+oyp2+7);
ObjEffect_SetVertexXY(hfire,3,GetPlayerX+oxp-
7,GetPlayerY+oyp2+7);
if(GetKeyState(VK_SLOWMOVE)==KEY_PUSH ||
GetKeyState(VK_SLOWMOVE)==KEY_HOLD){
if(count%6 == 3){
i=2;
while(i<=2){
CreatePlayerShot01(GetPlayerX()
+oxp, GetPlayerY()+oyp2-7, 20, 264, 4.0, 1, 1);
i++
}
}
}else{
if(count%8 == 4){
i=2;
while(i<=2){
CreatePlayerShot01(GetPlayerX()
+oxp, GetPlayerY()+oyp2-7, 20, 264, 4.0, 1, 1);
i++;
}
}
}
yield;
}
}
}
task WaterSign(position){
let hwater = Obj_Create(OBJ_EFFECT);
Obj_SetAlpha(hwater, 200);
ObjEffect_SetTexture(hwater, imgSprite);
ObjEffect_SetRenderState(hwater, ALPHA);
ObjEffect_SetLayer(hwater, 1);
ObjEffect_SetPrimitiveType(hwater, PRIMITIVE_TRIANGLEFAN);
ObjEffect_CreateVertex(hwater, 4);
ObjEffect_SetVertexUV(hwater, 0, 106, 168);
ObjEffect_SetVertexUV(hwater, 1, 119, 168);
ObjEffect_SetVertexUV(hwater, 2, 119, 181);
ObjEffect_SetVertexUV(hwater, 3, 106, 181);
if(position=="Fifth"){
while(!Obj_BeDeleted(hwater)){
ObjEffect_SetVertexXY(hwater,0,GetPlayerX-oxp2-
7,GetPlayerY+oyp3-7);
ObjEffect_SetVertexXY(hwater,1,GetPlayerX-
oxp2+7,GetPlayerY+oyp3-7);
ObjEffect_SetVertexXY(hwater,2,GetPlayerX-
oxp2+7,GetPlayerY+oyp3+7);
ObjEffect_SetVertexXY(hwater,3,GetPlayerX-oxp2-
7,GetPlayerY+oyp3+7);
if(GetKeyState(VK_SLOWMOVE)==KEY_PUSH ||
GetKeyState(VK_SLOWMOVE)==KEY_HOLD){
if(count%6 == 3){
i=2;
while(i<=2){
CreatePlayerShot01(GetPlayerX()-
oxp2, GetPlayerY()+oyp3, 20, 265, 3.0, 1, 2);
CreatePlayerShot01(GetPlayerX()-
oxp2, GetPlayerY()+oyp3, 20, 275, 3.0, 1, 2);
i++
}
}
}else{
if(count%8 == 4){
i=2;
while(i<=2){
CreatePlayerShot01(GetPlayerX()-
oxp2, GetPlayerY()+oyp3, 20, 265, 3.0, 1, 2);
CreatePlayerShot01(GetPlayerX()-
oxp2, GetPlayerY()+oyp3, 20, 275, 3.0, 1, 2);
i++;
}
}
}
yield;
}
}if(position=="Sixth"){
while(!Obj_BeDeleted(hwater)){
ObjEffect_SetVertexXY(hwater,0,GetPlayerX+oxp2-
7,GetPlayerY+oyp3-7);
ObjEffect_SetVertexXY
(hwater,1,GetPlayerX+oxp2+7,GetPlayerY+oyp3-7);
ObjEffect_SetVertexXY
(hwater,2,GetPlayerX+oxp2+7,GetPlayerY+oyp3+7);
ObjEffect_SetVertexXY(hwater,3,GetPlayerX+oxp2-
7,GetPlayerY+oyp3+7);
if(GetKeyState(VK_SLOWMOVE)==KEY_PUSH ||
GetKeyState(VK_SLOWMOVE)==KEY_HOLD){
if(count%6 == 3){
i=2;
while(i<=2){
CreatePlayerShot01(GetPlayerX()-
oxp2, GetPlayerY()+oyp3, 20, 265, 3.0, 1, 2);
CreatePlayerShot01(GetPlayerX()-
oxp2, GetPlayerY()+oyp3, 20, 275, 3.0, 1, 2);
i++
}
}
}else{
if(count%8 == 4){
i=2;
while(i<=2){
CreatePlayerShot01(GetPlayerX()-
oxp2, GetPlayerY()+oyp3, 20, 265, 3.0, 1, 2);
CreatePlayerShot01(GetPlayerX()-
oxp2, GetPlayerY()+oyp3, 20, 275, 3.0, 1, 2);
i++;
}
}
}
yield;
}
}if(position=="Seventh"){
while(!Obj_BeDeleted(hwater)){
ObjEffect_SetVertexXY(hwater,0,GetPlayerX-oxp-
7,GetPlayerY+oyp2-7);
ObjEffect_SetVertexXY(hwater,1,GetPlayerX-
oxp+7,GetPlayerY+oyp2-7);
ObjEffect_SetVertexXY(hwater,2,GetPlayerX-
oxp+7,GetPlayerY+oyp2+7);
ObjEffect_SetVertexXY(hwater,3,GetPlayerX-oxp-
7,GetPlayerY+oyp2+7);
if(GetKeyState(VK_SLOWMOVE)==KEY_PUSH ||
GetKeyState(VK_SLOWMOVE)==KEY_HOLD){
if(count%6 == 3){
i=2;
while(i<=2){
CreatePlayerShot01(GetPlayerX()-
oxp, GetPlayerY()+oyp2, 20, 265, 3.0, 1, 2);
CreatePlayerShot01(GetPlayerX()-
oxp, GetPlayerY()+oyp2, 20, 275, 3.0, 1, 2);
i++
}
}
}else{
if(count%8 == 4){
i=2;
while(i<=2){
CreatePlayerShot01(GetPlayerX()-
oxp, GetPlayerY()+oyp2, 20, 265, 3.0, 1, 2);
CreatePlayerShot01(GetPlayerX()-
oxp, GetPlayerY()+oyp2, 20, 275, 3.0, 1, 2);
i++;
}
}
}
yield;
}
}if(position=="Eighth"){
while(!Obj_BeDeleted(hwater)){
ObjEffect_SetVertexXY(hwater,0,GetPlayerX+oxp-
7,GetPlayerY+oyp2-7);
ObjEffect_SetVertexXY
(hwater,1,GetPlayerX+oxp+7,GetPlayerY+oyp2-7);
ObjEffect_SetVertexXY
(hwater,2,GetPlayerX+oxp+7,GetPlayerY+oyp2+7);
ObjEffect_SetVertexXY(hwater,3,GetPlayerX+oxp-
7,GetPlayerY+oyp2+7);
if(GetKeyState(VK_SLOWMOVE)==KEY_PUSH ||
GetKeyState(VK_SLOWMOVE)==KEY_HOLD){
if(count%6 == 3){
i=2;
while(i<=2){
CreatePlayerShot01(GetPlayerX()-
oxp, GetPlayerY()+oyp2, 20, 265, 3.0, 1, 2);
CreatePlayerShot01(GetPlayerX()-
oxp, GetPlayerY()+oyp2, 20, 275, 3.0, 1, 2);
i++
}
}
}else{
if(count%8 == 4){
i=2;
while(i<=2){
CreatePlayerShot01(GetPlayerX()-
oxp, GetPlayerY()+oyp2, 20, 265, 3.0, 1, 2);
CreatePlayerShot01(GetPlayerX()-
oxp, GetPlayerY()+oyp2, 20, 275, 3.0, 1, 2);
i++;
}
}
}
yield;
}
}
}
function wait(w){
loop(w){yield;}
}
}
yeah...but when I start a script problems occur in the following order...
1. fps comes crashing down down down...I'm talking all the way to around 9.65fps per say...
2. then when I press USER yes stuff changes but not the way I want it to...
3. what goes right, the graphic changes like it's suppose to...
4. what goes wrong, the shot type changes but then the first shot type is still shooting wth...& when I change it back...graphic changes correctly again but still with the all shot type at once stuff...
5. also when I shoot...let's see the bullets do outrageous damage even though I have it set up not to...they only shoot out of one option & it also causes slightly more slowdown then normal...
I'm certain that it's in this part of the script...as it was working fine until I starting stocking up on the task...which I'm also sure isn't the problem...oh & if I remove the loop{} from mainTask...welp, I get all problems fixed except no switch what-so-ever...