Advertisement
Guest User

h

a guest
Nov 1st, 2017
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.44 KB | None | 0 0
  1. let home_enemyArray = [];
  2. let home_closestObj = 0;
  3. @MainLoop{
  4.     home_enemyArray = GetIntersectionRegistedEnemyID;
  5.     if(length(home_enemyArray) > 0)
  6.     {
  7.         if(home_closestObj == 0 || Obj_IsDeleted(home_closestObj) || GetVirtualKeyState(VK_SHOT) == KEY_PUSH)
  8.         {
  9.             home_closestObj = home_enemyArray[0];
  10.         }
  11.         yield;
  12. }
  13. //---------------------------------------------------------------------------------------------------------------------------------
  14. let obj = CreatePlayerShotA1(ObjRender_GetX(orb1), ObjRender_GetY(orb1), 7, 270, 2, 1, 3);
  15.                     HB(obj);
  16.  
  17. task HB(obj){
  18.     let angleA = ObjMove_GetAngle(obj);
  19.     let angHome = 0;
  20.     let r = 0;
  21.     let r1 = 5;
  22.     let homeOn = false;
  23.     let home_obj = 0;
  24.     let angleT = 270;
  25.     let X;
  26.     let Y;
  27.     let Angle;
  28. if(length(home_enemyArray) != 0)
  29.     {
  30.         if(ObjEnemy_GetInfo(home_closestObj, INFO_LIFE) > 0)
  31.         {
  32.             homeOn = true;
  33.             home_obj = home_closestObj;
  34.         }
  35.     }
  36.     while(!Obj_IsDeleted(obj)){
  37.  
  38.         X = ObjMove_GetX(obj);
  39.         Y = ObjMove_GetY(obj);
  40.         Angle = ObjMove_GetAngle(obj);
  41.  
  42.         if(homeOn && !Obj_IsDeleted(home_obj)){
  43.         angleT = atan2(ObjMove_GetY(home_obj) - Y, ObjMove_GetX(home_obj) - X);
  44.         angHome = angleT - angleA;
  45.         while(angHome >= 180){
  46.             angHome -= 360;
  47.         }
  48.         while(-180 > angHome){
  49.             angHome += 360;
  50.         }
  51.         r = (|angHome|);
  52.         r1 = r/10;
  53.         if(2 >= r){
  54.             angleA = angleT;
  55.         }else if(r > 2){
  56.             angleA += r1 * angHome / (r/2);
  57.         }
  58.     }
  59.         ObjMove_SetAngle(obj, angleA);
  60.         yield;
  61.     }
  62. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement