//MOVIMENTAÇÃO ------------------------------------------------------------- //MOVIMENTAÇÃO ------------------------------------------------------------- //MOVIMENTAÇÃO ------------------------------------------------------------- //MOVIMENTAÇÃO ------------------------------------------------------------- //MOVIMENTAÇÃO ------------------------------------------------------------- //MOVIMENTAÇÃO ------------------------------------------------------------- //MOVIMENTAÇÃO ------------------------------------------------------------- //MOVIMENTAÇÃO ------------------------------------------------------------- //MOVIMENTAÇÃO ------------------------------------------------------------- //MOVIMENTAÇÃO ------------------------------------------------------------- //MOVIMENTAÇÃO ------------------------------------------------------------- //MOVIMENTAÇÃO ------------------------------------------------------------- public void MOV(int WidthTela, int HeightTela, Random aleatório, Personagem P1) { //posição do meio meio.X = individuo.X + individuo.Width / 4; meio.Y = individuo.Y; meio.Width = individuo.Width / 2; meio.Height = individuo.Height; //COLISÃO COM O PERSONAGEM //COLISÃO COM O PERSONAGEM //COLISÃO COM O PERSONAGEM //COLISÃO COM O PERSONAGEM //COLISÃO COM O PERSONAGEM //COLISÃO COM O PERSONAGEM if (!MORRENDO && P1.g == 0) { if (P1.meio.Intersects(meio) && meio.X > P1.meio.X && !P1.ATACANDO && (!P1.PULANDOandando || !P1.PULANDOcorrendo || !P1.PULANDOparado) && !P1.PODER && !P1.DEFENDENDO && !P1.AGACHADO) { P1.COLIDINDOdireita = true; P1.Vx = 0; P1.ANDANDO = false; P1.CORRENDO = false; P1.PARADO = true; } else if (!meio.Intersects(meio) && meio.X > P1.meio.X) { P1.COLIDINDOdireita = false; } if (P1.meio.Intersects(meio) && meio.X < P1.meio.X && !P1.ATACANDO && (!P1.PULANDOandando || !P1.PULANDOcorrendo || !P1.PULANDOparado) && !P1.PODER && !P1.DEFENDENDO && !P1.AGACHADO) { P1.COLIDINDOesquerda = true; P1.Vx = 0; P1.ANDANDO = false; P1.CORRENDO = false; P1.PARADO = true; } else if (!P1.meio.Intersects(meio) && meio.X < P1.meio.X) { P1.COLIDINDOesquerda = false; } } if (!P1.meio.Intersects(meio) && meio.X > P1.meio.X) { P1.COLIDINDOdireita = false; } if (!meio.Intersects(meio) && meio.X < P1.meio.X) { P1.COLIDINDOesquerda = false; } //-------------------------------------------------------- FRAMES (parte de DRAW + EFEITOS UPDATE) //PARADO //PARADO //PARADO //PARADO //PARADO //PARADO //PARADO //PARADO if (PARADO && !MORRENDO)//PARADO { individuo.Width = WidthTela / 10; individuo.Height = HeightTela / 4 + HeightTela / 27; //tamanho frameparadoi1.X++; if (frameparadoi1.X >= SpriteSheetAndari1.X) { frameparadoi1.X = 0; frameparadoi1.Y++; } if (frameparadoi1.X == 7 && frameparadoi1.Y == 9) { frameparadoi1.X = 0; frameparadoi1.Y = 0; } } //DIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITADIREITA //DIREITA //DIREITA //DIREITA //DIREITA else if (DIREITA && !ESQUERDA)//DIREITA { //ANDANDO //ANDANDO //ANDANDO //ANDANDO //ANDANDO //ANDANDO //ANDANDO if (ANDANDO) { Px += aleatório.Next(HeightTela / 300, HeightTela / 150); individuo.Width = WidthTela / 14; individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); frameAndari1.X--; if (frameAndari1.X <= -1) { frameAndari1.X = 19; frameAndari1.Y++; } if (frameAndari1.X == 17 && frameAndari1.Y == 3) { frameAndari1.X = 19; frameAndari1.Y = 0; } } //TOMANDO HIT //TOMANDO HIT //TOMANDO HIT//TOMANDO HIT //TOMANDO HIT //TOMANDO HIT //TOMANDO HIT if (TOMANDOHIT) { if (HIT1)//CABEÇA { HIT2 = false; HIT3 = false; individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); individuo.Width = WidthTela / 12; frameALLi1.X--; if (frameALLi1.X <= -1) { frameALLi1.X = 8; frameALLi1.Y++; } if (frameALLi1.X <= 1 && frameALLi1.Y == 2) { HIT1 = false; PARADO = true; TOMANDOHIT = false; opçluta = 0; } } if (HIT2)//PEITO { HIT1 = false; HIT3 = false; individuo.Width = WidthTela / 10; individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); frameALLi1.X--; if (frameALLi1.X <= -1) { frameALLi1.X = 8; frameALLi1.Y++; } if (frameALLi1.X <= 1 && frameALLi1.Y == 2) { HIT2 = false; TOMANDOHIT = false; PARADO = true; opçluta = 0; } } if (HIT3)//Pernas (cair) { HIT1 = false; HIT2 = false; individuo.Width = WidthTela / 6; individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); frameALLi1.X--; if (frameALLi1.X <= -1) { frameALLi1.X = 7; frameALLi1.Y++; } if (frameALLi1.X <= 4 && frameALLi1.Y == 5) { HIT3 = false; TOMANDOHIT = false; CAIDO = true; } } }//fim tomando hit //OUTROS MOVIMENTOS //OUTROS MOVIMENTOS //OUTROS MOVIMENTOS //OUTROS MOVIMENTOS if (DEFENDENDO && !AGACHADO) { individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); individuo.Width = WidthTela / 12; if (frameALLi1.X <= -1) { frameALLi1.X = 7; frameALLi1.Y++; } if (frameALLi1.Y < 2) { frameALLi1.X--; } if (frameALLi1.Y >= 2) opçluta = 0; } //defendendo e agachando if (DEFENDENDO && AGACHADO) { individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); individuo.Width = WidthTela / 10; if (frameALLi1.X <= -1) { frameALLi1.X = 7; frameALLi1.Y++; } MediaPlayer.Resume(); if (frameALLi1.Y < 2) { frameALLi1.X--; } if (frameALLi1.Y >= 2) opçluta = 0; } //agachando sem defender if (!DEFENDENDO && AGACHADO) { individuo.Width = WidthTela / 12; individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); if (frameALLi1.X <= -1) { frameALLi1.X = 7; frameALLi1.Y++; } if (frameALLi1.Y < 2) { frameALLi1.X--; } if (frameALLi1.Y >= 2) opçluta = 0; } //jogar faca if (ATACANDO) { ANDANDO = false; if (Jogar_Faca) { ANDANDO = false; individuo.Width = WidthTela / 8; individuo.Height = HeightTela / 4 + (3 * HeightTela / 70); frameALLi1.X--; if (frameALLi1.X <= -1) { frameALLi1.X = 7; frameALLi1.Y++; } if (frameALLi1.X <= 1 && frameALLi1.Y == 7 || frameALLi1.Y > 7) { Jogar_Faca = false; ATACANDO = false; opçluta = 0; opç_Atk = 0; PARADO = true; // FAZER COM QUE NAO DESAPAREÇA } if (frameALLi1.X == 5 && frameALLi1.Y == 5) { faca_voando = true; GerarFacas(WidthTela, HeightTela); } } if (ATACK1) { individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); individuo.Width = WidthTela / 10 - HeightTela / 200; frameALLi1.X--; if (frameALLi1.X <= -1) { frameALLi1.X = 7; frameALLi1.Y++; } if (frameALLi1.X <= 0 && frameALLi1.Y == 3 || frameALLi1.Y > 3) { ATACK1 = false; ATACANDO = false; opçluta = 0; opç_Atk = 0; PARADO = true; // FAZER COM QUE NAO DESAPAREÇA } //SE ENCOSTAR NO INIMIGO ELE TOMA HIT if (frameALLi1.X == 0 && frameALLi1.Y == 2 && (!P1.DEFENDENDO && P1.ESQUERDA || P1.DIREITA) && P1.meio.Intersects(individuo) && !P1.IVUNERAVEL) { if (!P1.PODERescudo) { P1.vida -= 10 + P1.LVL; P1.Vx += HeightTela / 50; P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 10 + P1.LVL, WidthTela, HeightTela, 2); // personagem leva hit P1.gerarHUDVidaPerdida(HeightTela / 100); //10 de vida //HIT //HIT //PERSONAGEM TOMA HIT if (!P1.PULANDOandando && !P1.PULANDOcorrendo && !P1.PULANDOparado && !P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.HIT1 = true; P1.HIT2 = false; } if (P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.AGACHADOHIT = true; } } else if (P1.PODERescudo) { ESCUDO.e.Quantidade -= 10 + P1.LVL; P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 10 + P1.LVL, WidthTela, HeightTela, 4); // personagem leva hit } } //FALTA MOSTRAR VC TOMANDO HIT }//fim atack1 } //APOS LEVAR HIT3 if (CAIDO) { individuo.Width = WidthTela / 6 + HeightTela / 70; individuo.Height = HeightTela / 4 + (3 * HeightTela / 70) - HeightTela / 10; frameALLi1.X--; if (frameALLi1.X <= -1) { frameALLi1.X = 3; frameALLi1.Y++; } if (frameALLi1.X <= 0 && frameALLi1.Y == 7) { frameALLi1.X = 3; frameALLi1.Y = 0; } } //levantar do chao if (LEVANTANDO) { individuo.Width = WidthTela / 6 + HeightTela / 70; individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); frameALLi1.X--; if (frameALLi1.X <= -1) { frameALLi1.X = 7; frameALLi1.Y++; } if (frameALLi1.X <= 5 && frameALLi1.Y == 6) { PARADO = true; // FAZER COM QUE NAO DESAPAREÇA LEVANTANDO = false; opçluta = 0; } } //se morrer (MORRENDO) if (MORRENDO) { individuo.Width = WidthTela / 6; individuo.Height = HeightTela / 4 + (2 * HeightTela / 70) + HeightTela / 100; frameALLi1.X--; if (frameALLi1.X <= -1) { frameALLi1.X = 7; frameALLi1.Y++; } PARADO = false; } //PODERRRR if (PODER) { individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); individuo.Width = WidthTela / 10 - HeightTela / 200; frameALLi1.X--; if (frameALLi1.X <= -1) { frameALLi1.X = 9; frameALLi1.Y++; } //criando facas if (frameALLi1.X == 0 && frameALLi1.Y == 7) { GerarFacasPoder(WidthTela, HeightTela); faca_voando = true; VISUPODER();//CRIA UM EFEITO VISUAL } //fim do mov poder if (frameALLi1.X <= 4 && frameALLi1.Y == 12 || frameALLi1.Y > 12) { PARADO = true; // FAZER COM QUE NAO DESAPAREÇA PODER = false; opçluta = 0; } } //RASTEIRAAAAAA! if (RASTEIRA) { individuo.Width = WidthTela / 10 - HeightTela / 200 + HeightTela / 14; individuo.Height = HeightTela / 4 + (2 * HeightTela / 70) + HeightTela / 100; frameALLi1.X--; if (frameALLi1.X <= -1) { frameALLi1.X = 7; frameALLi1.Y++; } //criando facas if (frameALLi1.X <= 1 && frameALLi1.Y == 7 || frameALLi1.Y > 7) { PARADO = true; // FAZER COM QUE NAO DESAPAREÇA RASTEIRA = false; opçluta = 0; } //movimento if (frameALLi1.X >= 1 && frameALLi1.Y < 7) { Px += HeightTela / 70; } if (individuo.Intersects(P1.meio) && (!P1.DEFENDENDO && !P1.AGACHADO && P1.ESQUERDA) && P1.meio.X > individuo.X && frameALLi1.Y >= 2 && frameALLi1.Y <= 5 && !P1.IVUNERAVEL) { if (!P1.PODERescudo) { P1.vida -= 1 + P1.LVL; P1.gerarHUDVidaPerdida(HeightTela / HeightTela); //1 de vida P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 1 + P1.LVL, WidthTela, HeightTela, 2); // personagem leva hit //HIT //HIT //PERSONAGEM TOMA HIT if (!P1.PULANDOandando && !P1.PULANDOcorrendo && !P1.PULANDOparado && !P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.HIT2 = true; P1.HIT1 = false; } if (P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.AGACHADOHIT = true; } } else if (P1.PODERescudo) { ESCUDO.e.Quantidade -= 1 + P1.LVL; // P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 1 + P1.LVL, WidthTela, HeightTela, 4); // personagem leva hit } } //falta fz P1 cair (hit) } //AGARRAR if (AGARRAR) { individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); individuo.Width = WidthTela / 10 + HeightTela / 27; frameALLi1.X--; if (frameALLi1.X <= -1) { frameALLi1.X = 7; frameALLi1.Y++; } //se agarrar if (P1.meio.Intersects(individuo) && P1.meio.X > individuo.X && frameALLi1.Y >= 3 && frameALLi1.Y < 12 && (P1.DEFENDENDO && P1.AGACHADO || P1.DEFENDENDO && !P1.AGACHADO || !P1.DEFENDENDO && P1.AGACHADO || P1.PARADO || P1.CORRENDO || P1.ANDANDO) && !P1.ATACANDO && (!P1.PULANDOandando || !P1.PULANDOcorrendo || !P1.PULANDOparado) && g == 0) { P1.Vx = 0; P1.Vy = 0; P1.g = 0; P1.SENDOAGARRADO = true; P1.ANDANDO = false; P1.CORRENDO = false; P1.DEFENDENDO = false; P1.AGACHADO = false; P1.PARADO = true; // <= } //TOMANDO HIT (qnd FOR PEGO e esteja em TAL FRAME) if (frameALLi1.X == 6 && P1.meio.X > individuo.X && frameALLi1.Y == 5 && P1.meio.Intersects(individuo) && !P1.IVUNERAVEL) { if (!P1.PODERescudo) { P1.vida -= 10 + P1.LVL; P1.gerarHUDVidaPerdida(HeightTela / 100); //10 de vida P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 10 + P1.LVL, WidthTela, HeightTela, 2); // personagem leva hit //HIT //HIT //PERSONAGEM TOMA HIT if (!P1.PULANDOandando && !P1.PULANDOcorrendo && !P1.PULANDOparado && !P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.HIT2 = true; P1.HIT1 = false; } if (P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.AGACHADOHIT = true; } } else if (P1.PODERescudo) { ESCUDO.e.Quantidade -= 10 + P1.LVL; P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 10 + P1.LVL, WidthTela, HeightTela, 4); // personagem leva hit } } if (frameALLi1.Y == 10 && P1.meio.X > individuo.X && P1.meio.Intersects(individuo) && !P1.IVUNERAVEL) { if (!P1.PODERescudo) { P1.vida -= 2 + P1.LVL; P1.gerarHUDVidaPerdida(HeightTela / 400); //2 de vida P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 2 + P1.LVL, WidthTela, HeightTela, 2); // personagem leva hit //HIT //HIT //PERSONAGEM TOMA HIT if (!P1.PULANDOandando && !P1.PULANDOcorrendo && !P1.PULANDOparado && !P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.HIT2 = true; P1.HIT1 = false; } if (P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.AGACHADOHIT = true; } } else if (P1.PODERescudo) { ESCUDO.e.Quantidade -= 2 + P1.LVL; P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 2 + P1.LVL, WidthTela, HeightTela, 4); // personagem leva hit } } //fim do agarrar if (frameALLi1.X <= 3 && frameALLi1.Y == 12 || frameALLi1.Y > 12) { AGARRAR = false; opçluta = 0; PARADO = true; // FAZER COM QUE NAO DESAPAREÇA P1.SENDOAGARRADO = false; } } }//fim direita //ESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDAESQUERDA //ESQUERDA //ESQUERDA //ESQUERDA //ESQUERDA else if (!DIREITA && ESQUERDA)//ESQUERDA { //ANDANDO //ANDANDO //ANDANDO //ANDANDO //ANDANDO //ANDANDO if (ANDANDO) { Px -= aleatório.Next(HeightTela / 140, HeightTela / 130); individuo.Width = WidthTela / 14; individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); frameAndari1.X++; if (frameAndari1.X >= SpriteSheetAndari1.X) { frameAndari1.X = 0; frameAndari1.Y++; } if (frameAndari1.X == 2 && frameAndari1.Y == 3) { frameAndari1.X = 0; frameAndari1.Y = 0; } } //TOMANDO HIT //TOMANDO HIT //TOMANDO HIT //TOMANDO HIT //TOMANDO HIT if (TOMANDOHIT) { if (HIT1)//CABEÇA { individuo.Width = WidthTela / 12; individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); frameALLi1.X++; if (frameALLi1.X >= SpriteSheetHit1i1.X) { frameALLi1.X = 0; frameALLi1.Y++; } if (frameALLi1.X >= 6 && frameALLi1.Y == 2 || frameALLi1.Y > 2) { HIT1 = false; TOMANDOHIT = false; opçluta = 0; PARADO = true; } } if (HIT2)//PEITO { individuo.Width = WidthTela / 10; individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); frameALLi1.X++; if (frameALLi1.X >= SpriteSheetHit2i1.X) { frameALLi1.X = 0; frameALLi1.Y++; } if (frameALLi1.X >= 6 && frameALLi1.Y == 2 || frameALLi1.Y > 2) { HIT2 = false; TOMANDOHIT = false; opçluta = 0; PARADO = true; } } if (HIT3)//Pernas (cair) { individuo.Width = WidthTela / 10 + HeightTela / 9;//(+120) individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); frameALLi1.X++; if (frameALLi1.X >= SpriteSheetHit3i1.X) { frameALLi1.X = 0; frameALLi1.Y++; } if (frameALLi1.X >= 3 && frameALLi1.Y == 5 || frameALLi1.Y > 5) { HIT3 = false; TOMANDOHIT = false; CAIDO = true; } } } //OUTROS MOVIMENTOS //OUTROS MOVIMENTOS //OUTROS MOVIMENTOS //OUTROS MOVIMENTOS //OUTROS MOVIMENTOS //ñ agachar e defender if (DEFENDENDO && !AGACHADO) { individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); individuo.Width = WidthTela / 12; if (frameALLi1.X >= SpriteSheetDEFi1.X) { frameALLi1.X = 0; frameALLi1.Y++; } if (frameALLi1.Y < 2) { frameALLi1.X++; } if (frameALLi1.Y >= 2) opçluta = 0; } //agachando e defedendo if (DEFENDENDO && AGACHADO) { individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); individuo.Width = WidthTela / 10; if (frameALLi1.X >= SpriteSheetAgacharDEFi1.X) { frameALLi1.X = 0; frameALLi1.Y++; } if (frameALLi1.Y < 2) { frameALLi1.X++; } if (frameALLi1.Y >= 2) opçluta = 0; } //agachando e sem defeder if (!DEFENDENDO && AGACHADO) { individuo.Width = WidthTela / 12; individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); if (frameALLi1.X >= SpriteSheetAgachari1.X) { frameALLi1.X = 0; frameALLi1.Y++; } if (frameALLi1.Y < 2) { frameALLi1.X++; } if (frameALLi1.Y >= 2) opçluta = 0; } //ATACANDOoooooooooooooooo if (ATACANDO) { ANDANDO = false; if (Jogar_Faca) { ANDANDO = false; individuo.Width = WidthTela / 8; individuo.Height = HeightTela / 4 + (3 * HeightTela / 70); frameALLi1.X++; if (frameALLi1.X >= SpriteSheetJogarFacai1.X) { frameALLi1.X = 0; frameALLi1.Y++; } if (frameALLi1.X >= 6 && frameALLi1.Y == 7 || frameALLi1.Y > 7) { Jogar_Faca = false; ATACANDO = false; opçluta = 0; opç_Atk = 0; PARADO = true; // FAZER COM QUE NAO DESAPAREÇA } if (frameALLi1.X == 2 && frameALLi1.Y == 5) { faca_voando = true; GerarFacas(WidthTela, HeightTela); } }//fim do jogar faca if (ATACK1) { individuo.Width = WidthTela / 10 - HeightTela / 200; individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); frameALLi1.X++; if (frameALLi1.X >= SpriteSheetATK1i1.X) { frameALLi1.X = 0; frameALLi1.Y++; } if (frameALLi1.X >= 7 && frameALLi1.Y == 3 || frameALLi1.Y > 3) { ATACK1 = false; ATACANDO = false; opçluta = 0; opç_Atk = 0; PARADO = true; // FAZER COM QUE NAO DESAPAREÇA } //SE ENCOSTAR NO INIMIGO ELE TOMA HIT if (frameALLi1.X == 7 && frameALLi1.Y == 2 && (!P1.DEFENDENDO && P1.DIREITA || P1.ESQUERDA) && P1.meio.Intersects(individuo) && !P1.IVUNERAVEL) { if (!P1.PODERescudo) { P1.vida -= 10 + P1.LVL; P1.Vx -= HeightTela / 50; P1.gerarHUDVidaPerdida(HeightTela / 100); //10 de vida P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 10 + P1.LVL, WidthTela, HeightTela, 2); // personagem leva hit //HIT //HIT //PERSONAGEM TOMA HIT if (!P1.PULANDOandando && !P1.PULANDOcorrendo && !P1.PULANDOparado && !P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.HIT1 = true; P1.HIT2 = false; } if (P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.AGACHADOHIT = true; } } else if (P1.PODERescudo) { ESCUDO.e.Quantidade -= 10 + P1.LVL; P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 10 + P1.LVL, WidthTela, HeightTela, 4); // personagem leva hit } } }//fim atack1 } //APOS LEVAR HIT3 if (CAIDO) { individuo.Height = HeightTela / 4 + (3 * HeightTela / 70) - HeightTela / 10; individuo.Width = WidthTela / 6 + HeightTela / 70; frameALLi1.X++; if (frameALLi1.X >= SpriteSheetCaidoi1.X) { frameALLi1.X = 0; frameALLi1.Y++; } if (frameALLi1.X >= 3 && frameALLi1.Y == 7) { frameALLi1.X = 0; frameALLi1.Y = 0; } } //levantar do chao if (LEVANTANDO) { individuo.Width = WidthTela / 6 + HeightTela / 70; individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); frameALLi1.X++; if (frameALLi1.X >= SpriteSheetLevantari1.X) { frameALLi1.X = 0; frameALLi1.Y++; } if (frameALLi1.X >= 2 && frameALLi1.Y == 6 || frameALLi1.Y > 6) { LEVANTANDO = false; opçluta = 0; PARADO = true; // FAZER COM QUE NAO DESAPAREÇA } } //MORRENDO - morte (invunerável) if (MORRENDO) { individuo.Width = WidthTela / 6; individuo.Height = HeightTela / 4 + (2 * HeightTela / 70) + HeightTela / 100; frameALLi1.X++; if (frameALLi1.X >= SpriteSheetMORTEi1.X) { frameALLi1.X = 0; frameALLi1.Y++; } PARADO = false; } //PODERRRR if (PODER) { individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); individuo.Width = WidthTela / 10 - HeightTela / 200; frameALLi1.X++; if (frameALLi1.X >= SpriteSheetPODERi1.X) { frameALLi1.X = 0; frameALLi1.Y++; } //criando facas if (frameALLi1.X == 9 && frameALLi1.Y == 7) { GerarFacasPoder(WidthTela, HeightTela); faca_voando = true; VISUPODER();//CRIA UM EFEITO VISUAL } //fim do mov poder if (frameALLi1.X >= 5 && frameALLi1.Y == 12 || frameALLi1.Y > 12) { PODER = false; opçluta = 0; PARADO = true; // FAZER COM QUE NAO DESAPAREÇA } } //RASTEIRAAAAAA! if (RASTEIRA) { individuo.Width = WidthTela / 10 - HeightTela / 200 + HeightTela / 14; individuo.Height = HeightTela / 4 + (2 * HeightTela / 70) + HeightTela / 100; frameALLi1.X++; if (frameALLi1.X >= SpriteSheetRasteirai1.X) { frameALLi1.X = 0; frameALLi1.Y++; } //criando facas if (frameALLi1.X >= 6 && frameALLi1.Y == 7 || frameALLi1.Y > 7) { RASTEIRA = false; PARADO = true; // FAZER COM QUE NAO DESAPAREÇA opçluta = 0; } if (frameALLi1.X >= 1 && frameALLi1.Y < 7) { Px -= HeightTela / 70; } if (individuo.Intersects(P1.meio) && (!P1.DEFENDENDO && !P1.AGACHADO && P1.DIREITA) && P1.meio.X < individuo.X && frameALLi1.Y >= 2 && frameALLi1.Y <= 5 && !P1.IVUNERAVEL) { if (!P1.PODERescudo) { P1.vida -= 1 + P1.LVL; P1.gerarHUDVidaPerdida(HeightTela / HeightTela); //1 de vida P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 1 + P1.LVL, WidthTela, HeightTela, 2); // personagem leva hit //HIT //HIT //PERSONAGEM TOMA HIT if (!P1.PULANDOandando && !P1.PULANDOcorrendo && !P1.PULANDOparado && !P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.HIT2 = true; P1.HIT1 = false; } if (P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.AGACHADOHIT = true; } } else if (P1.PODERescudo) { ESCUDO.e.Quantidade -= 1 + P1.LVL; P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 1 + P1.LVL, WidthTela, HeightTela, 4); // personagem leva hit } } //falta fz P1 cair (hit) } //AGARRAR if (AGARRAR) { individuo.Height = HeightTela / 4 + (2 * HeightTela / 70); individuo.Width = WidthTela / 10 + HeightTela / 27; frameALLi1.X++; if (frameALLi1.X >= SpriteSheetAgarrari1.X) { frameALLi1.X = 0; frameALLi1.Y++; } //se agarrar if (P1.meio.Intersects(individuo) && P1.meio.X < individuo.X && frameALLi1.Y >= 3 && frameALLi1.Y < 12 && (P1.DEFENDENDO && P1.AGACHADO || P1.DEFENDENDO && !P1.AGACHADO || !P1.DEFENDENDO && P1.AGACHADO || P1.PARADO || P1.CORRENDO || P1.ANDANDO) && !P1.ATACANDO && (!P1.PULANDOandando || !P1.PULANDOcorrendo || !P1.PULANDOparado) && g == 0) { P1.Vx = 0; P1.Vy = 0; P1.g = 0; P1.SENDOAGARRADO = true; P1.ANDANDO = false; P1.CORRENDO = false; P1.DEFENDENDO = false; P1.AGACHADO = false; P1.PARADO = true; } //TOMANDO HIT (qnd FOR PEGO e esteja em TAL FRAME) if (frameALLi1.X == 2 && P1.meio.X < individuo.X && frameALLi1.Y == 5 && P1.meio.Intersects(individuo) && !P1.IVUNERAVEL) { if (!P1.PODERescudo) { P1.vida -= 10 + P1.LVL; P1.gerarHUDVidaPerdida(HeightTela / 100); //10 de vida P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 10 + P1.LVL, WidthTela, HeightTela, 2); //HIT //HIT //PERSONAGEM TOMA HIT if (!P1.PULANDOandando && !P1.PULANDOcorrendo && !P1.PULANDOparado && !P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.HIT2 = true; P1.HIT1 = false; } if (P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.AGACHADOHIT = true; } } else if (P1.PODERescudo) { ESCUDO.e.Quantidade -= 10 + P1.LVL; P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 10 + P1.LVL, WidthTela, HeightTela, 4); // personagem leva hit } } if (frameALLi1.Y == 10 && P1.meio.X < individuo.X && P1.meio.Intersects(individuo) && !P1.IVUNERAVEL) { if (!P1.PODERescudo) { P1.vida -= 2 + P1.LVL; P1.gerarHUDVidaPerdida(HeightTela / 400); //2 de vida P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 2 + P1.LVL, WidthTela, HeightTela, 2); // personagem leva hit //HIT //HIT //PERSONAGEM TOMA HIT if (!P1.PULANDOandando && !P1.PULANDOcorrendo && !P1.PULANDOparado && !P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.HIT2 = true; P1.HIT1 = false; } if (P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.AGACHADOHIT = true; } } else if (P1.PODERescudo) { ESCUDO.e.Quantidade -= 2 + P1.LVL; P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 2 + P1.LVL, WidthTela, HeightTela, 4); // personagem leva hit } } //fim do agarrar if (frameALLi1.X >= 4 && frameALLi1.Y == 12 || frameALLi1.Y > 12) { AGARRAR = false; opçluta = 0; P1.SENDOAGARRADO = false; PARADO = true; // FAZER COM QUE NAO DESAPAREÇA } } }//fim da esquerda //SPRITESHEET DA FACA //SPRITESHEET DA FACA //SPRITESHEET DA FACA //SPRITESHEET DA FACA //SPRITESHEET DA FACA if (faca_voando) { for (int i = 0; i < listadefacas.Count; i++) { if (listadefacas[i].esquerda) { listadefacas[i].frameFACA.X++; if (listadefacas[i].frameFACA.X >= listadefacas[i].SpriteSheetFacai1.X) { listadefacas[i].frameFACA.X = 0; listadefacas[i].frameFACA.Y++; } if (listadefacas[i].frameFACA.X == 2 && listadefacas[i].frameFACA.Y == 2) { listadefacas[i].frameFACA.X = 0; listadefacas[i].frameFACA.Y = 0; } } if (listadefacas[i].direita) { listadefacas[i].frameFACA.X--; if (listadefacas[i].frameFACA.X <= -1) { listadefacas[i].frameFACA.X = 7; listadefacas[i].frameFACA.Y++; } if (listadefacas[i].frameFACA.X == 5 && listadefacas[i].frameFACA.Y == 2) { listadefacas[i].frameFACA.X = 7; listadefacas[i].frameFACA.Y = 0; } } } //POSIÇÃO DA FACA // OUTRO OBJETO //POSIÇÃO DA FACA // OUTRO OBJETO //POSIÇÃO DA FACA // OUTRO OBJETO //POSIÇÃO DA FACA // OUTRO OBJETO PosiçãoOBJLançado(WidthTela, HeightTela, P1); } }
//posição da faca //posição da faca //posição da faca //posição da faca //posição da faca //posição da faca public void PosiçãoOBJLançado(int WidthTela, int HeightTela, Personagem P1) { //posição da faca if (listadefacas.Count > 0) { for (int i = 0; i < listadefacas.Count; i++) { if (!listadefacas[i].CAINDO) { listadefacas[i].OBJ.X = listadefacas[i].PosX + Contexto.Fundo.fase.X + listadefacas[i].Vx; // posição definida (não variável) listadefacas[i].OBJ.Y = listadefacas[i].PosY + Contexto.Fundo.fase.Y + listadefacas[i].Vy; if (listadefacas[i].esquerda) { listadefacas[i].Vx -= HeightTela / 120; } if (listadefacas[i].direita) { listadefacas[i].Vx += HeightTela / 120; } listadefacas[i].Vy += HeightTela / 200; if (P1.meio.Intersects(listadefacas[i].OBJ)) { if (!P1.IVUNERAVEL || !P1.DEFENDENDO) { if (!P1.PODERescudo) { P1.vida -= HeightTela / 70 + P1.LVL; //(15 de vida) P1.gerarHUDVidaPerdida(HeightTela / 70); //15 de vida P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 15 + P1.LVL, WidthTela, HeightTela, 2); // personagem leva hit //HIT //HIT //PERSONAGEM TOMA HIT if (!P1.PULANDOandando && !P1.PULANDOcorrendo && !P1.PULANDOparado && !P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.HIT2 = true; P1.HIT1 = false; } if (P1.AGACHADO && !P1.DEFENDENDO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.AGACHADOHIT = true; } } else if (P1.PODERescudo) { ESCUDO.e.Quantidade -= HeightTela / 70 + P1.LVL; //(15 de vida) P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 15 + P1.LVL, WidthTela, HeightTela, 4); // personagem leva hit } } listadefacas.Remove(listadefacas[i]); } } } for (int i = 0; i < listadefacas.Count; i++) { if (listadefacas[i].CAINDO) { listadefacas[i].OBJ.X = listadefacas[i].PosX + Contexto.Fundo.fase.X + listadefacas[i].Vx; // posição definida (não variável) listadefacas[i].OBJ.Y = listadefacas[i].PosY + Contexto.Fundo.fase.Y + listadefacas[i].Vy; listadefacas[i].Vy += HeightTela / 100; if (P1.meio.Intersects(listadefacas[i].OBJ)) { if (!P1.IVUNERAVEL || !P1.DEFENDENDO) { if (!P1.PODERescudo) { P1.vida -= HeightTela / 70 + P1.LVL; //(15 de vida) P1.gerarHUDVidaPerdida(HeightTela / 70); //15 de vida P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 15 + P1.LVL, WidthTela, HeightTela, 2); // personagem leva hit //HIT //HIT //PERSONAGEM TOMA HIT if (!P1.PULANDOandando && !P1.PULANDOcorrendo && !P1.PULANDOparado && !P1.AGACHADO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.HIT2 = true; P1.HIT1 = false; } if (P1.AGACHADO && !P1.DEFENDENDO) { if (P1.DIREITA) { P1.frameHIT.X = 0; P1.frameHIT.Y = 0; } else if (P1.ESQUERDA) { P1.frameHIT.X = 7; P1.frameHIT.Y = 0; } P1.AGACHADOHIT = true; } } else if (P1.PODERescudo) { ESCUDO.e.Quantidade -= HeightTela / 70 + P1.LVL; //(15 de vida) P1.GERARdano(P1.individuo.X, P1.individuo.Y, P1.individuo.Width, P1.individuo.Height, this.DIREITA, this.ESQUERDA, 15 + P1.LVL, WidthTela, HeightTela, 4); // personagem leva hit } } listadefacas.Remove(listadefacas[i]); } } } } if (listadefacas.Count == 0) { faca_voando = false; } }