Vec3 vNULL = {0,0,0}; void DrawLine_c(float x, float y, float w, float h,DWORD color,int whightline) { D3DXVECTOR2 vLine1[2]; vLine1[0].x = x; vLine1[0].y = y; vLine1[1].x = w; vLine1[1].y = h; g_pLine->SetWidth(whightline); g_pLine->SetAntialias(false); g_pLine->SetGLLines(false); g_pLine->Begin(); g_pLine->Draw(vLine1, 2, color);//ab2489 g_pLine->End(); } bool W2S(Vec3 input, Vec3 &output) { IRenderer* Renderer = GetSSystemGlobalEnvironment()->GetIRenderer; Renderer->ProjectToScreen(input.x,input.y,input.z,&output.x,&output.y,&output.z ); if( output.z < 0.0f || output.z > 1.0f ) { output.x=output.y=0; return 0; } output.x *= ( Renderer->GetWidth() / 100.0f ); output.y *= ( Renderer->GetHeight() / 100.0f ); return true ; } /*void DrawCircle(int x, int y, int radius, int numSides, DWORD Color) //Credits to Ac1d_Burn I think { D3DXVECTOR2 Line[128]; float Step = D3DX_PI * 2.0 / numSides; int Count = 0; for (float a=0; a < D3DX_PI*2.0; a += Step) { float X1 = radius * cos(a) + x; float Y1 = radius * sin(a) + y; float X2 = radius * cos(a+Step) + x; float Y2 = radius * sin(a+Step) + y; Line[Count].x = X1; Line[Count].y = Y1; Line[Count+1].x = X2; Line[Count+1].y = Y2; Count += 2; } g_pLine->Begin(); g_pLine->Draw(Line,Count,Color); g_pLine->End(); }*/ void DrawLine( int x, int y, int w, int h, D3DCOLOR Color, LPDIRECT3DDEVICE9 pDevice) { struct Vertex { float x,y,z,ht; DWORD Color; } V[4] ={{x,y, 0.0f, 0.0f, Color}, {x+3,y+2, 1.0f, 1.0f, Color},{w,h, 1.0f, 1.0f, Color},{w+3,h+2, 1.0f, 1.0f, Color}}; pDevice->SetTexture(0, NULL); pDevice->SetPixelShader( 0 ); pDevice->SetFVF(D3DFVF_XYZRHW|D3DFVF_DIFFUSE); pDevice->SetRenderState(D3DRS_ALPHABLENDENABLE,true); pDevice->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_INVSRCALPHA); pDevice->SetRenderState(D3DRS_ZENABLE , FALSE); pDevice->SetRenderState(D3DRS_CULLMODE, D3DCULL_NONE); pDevice->DrawPrimitiveUP(D3DPT_TRIANGLESTRIP,2,V,sizeof(Vertex)); return; } float rast(Vec3 vec_1,Vec3 vec_2) { float dis; dis = sqrt((vec_2.x-vec_1.x)+(vec_2.y-vec_1.y)+(vec_2.z-vec_1.z)); return dis; } Vec3 GetBonePositionByID( IEntity* pEnt, int BoneID) { char* getBoneName; ICharacterInstance *pCharacterInstance = pEnt->GetCharacter(0); if( !pCharacterInstance ) return vNULL; ISkeletonPose *pSkeletonPose = pCharacterInstance->GetISkeletonPose(); if(!pSkeletonPose) return vNULL; int sBoneID = BoneID; if( sBoneID == -1 ) return vNULL; getBoneName = pSkeletonPose->GetJointNameByID( BoneID ); Matrix34 World = pEnt->GetWorldTM(); Matrix34 SkeletonAbs = Matrix34::Matrix34( pSkeletonPose->GetAbsJointByID( sBoneID )); Matrix34 matWorld = World; float m03,m13,m23; m03=(World.m00*SkeletonAbs.m03)+(World.m01*SkeletonAbs.m13)+(World.m02*SkeletonAbs.m23)+World.m03; matWorld.m03=m03; m13=(World.m10*SkeletonAbs.m03)+(World.m11*SkeletonAbs.m13)+(World.m12*SkeletonAbs.m23)+World.m13; matWorld.m13=m13; m23=(World.m20*SkeletonAbs.m03)+(World.m21*SkeletonAbs.m13)+(World.m22*SkeletonAbs.m23)+World.m23; matWorld.m23=m23; return matWorld.GetTranslation(); } Matrix33 GetBoneOriginMat33( IEntity* pEnt, int BoneId ) { Matrix33 empty = Matrix33(vNULL,vNULL,vNULL); ICharacterInstance *pCharacterInstance = pEnt->GetCharacter(0); if( !pCharacterInstance ) return empty; ISkeletonPose *Skeleton = pCharacterInstance->GetISkeletonPose(); if(!Skeleton) return empty; Matrix34 matWorld = pEnt->GetWorldTM() * Matrix34(Skeleton->GetAbsJointByID( BoneId )); return to_m33(matWorld); } bool isVisible ( Vec3& pos) { ray_hit hit; memset(&hit, 0, sizeof(hit)); ray_info info; Vec3 MyViewPos = GetBonePositionByID(GetIMyIActor()->getIEntity,13); info.Unknown1 = 0; info.Unknown2 = 0; info.Unknown3 = 0; info.start = MyViewPos; info.diff.x = pos.x - MyViewPos.x;//x info.diff.y = pos.y - MyViewPos.y;//y info.diff.z = pos.z - MyViewPos.z;//z info.objectType = 0x101; info.traceFlag = (COLLISION_RAY_PIERCABILITY & rwi_pierceability_mask); info.hit= &hit; info.Unknown4 = 1; info.Unknown5 = 0; info.Unknown6 = 0; info.Unknown7 = 0; return !GetSSystemGlobalEnvironment()->pPhysicalWorld->RayWorldIntersection(info,"RayWorldIntersection(Game)",4); } void two_bone_select(int bone_1,int bone_2, IEntity* pEnt,LPDIRECT3DDEVICE9 pDevice) { Vec3 bone1 = GetBonePositionByID(pEnt,bone_1); Vec3 outbone_1; W2S(bone1,outbone_1); Vec3 bone2 = GetBonePositionByID(pEnt,bone_2); Vec3 outbone_2; W2S(bone2,outbone_2); if((outbone_2.x>0 && outbone_2.y>0) || (outbone_1.x>0 && outbone_1.y>0)) { if(opt.esp.skel==1) { DrawLine(outbone_1.x,outbone_1.y,outbone_2.x,outbone_2.y,RED,pDevice); } if(opt.esp.skel==2) { DrawLine(outbone_1.x,outbone_1.y,outbone_2.x,outbone_2.y,BLUE,pDevice); } if(opt.esp.skel==3) { DrawLine(outbone_1.x,outbone_1.y,outbone_2.x,outbone_2.y,GREEN,pDevice); } if(opt.esp.skel==4) { DrawLine(outbone_1.x,outbone_1.y,outbone_2.x,outbone_2.y,WHITE,pDevice); } if(opt.esp.skel==5) { DrawLine(outbone_1.x,outbone_1.y,outbone_2.x,outbone_2.y,YELLOW,pDevice); } if(opt.esp.skel==6) { DrawLine(outbone_1.x,outbone_1.y,outbone_2.x,outbone_2.y,DEEPSKYBLUE,pDevice); } if(opt.esp.skel==7) { DrawLine(outbone_1.x,outbone_1.y,outbone_2.x,outbone_2.y,GOLD2,pDevice); } if(opt.esp.skel==8) { DrawLine(outbone_1.x,outbone_1.y,outbone_2.x,outbone_2.y,PURPLE,pDevice); } //////////////////////////////////////////////////////////////////////////////// if(opt.esp.skel2==1) { DrawLine(outbone_1.x,outbone_1.y,outbone_2.x,outbone_2.y,RED,pDevice); } if(opt.esp.skel2==2) { DrawLine(outbone_1.x,outbone_1.y,outbone_2.x,outbone_2.y,BLUE,pDevice); } if(opt.esp.skel2==3) { DrawLine(outbone_1.x,outbone_1.y,outbone_2.x,outbone_2.y,GREEN,pDevice); } if(opt.esp.skel2==4) { DrawLine(outbone_1.x,outbone_1.y,outbone_2.x,outbone_2.y,WHITE,pDevice); } if(opt.esp.skel2==5) { DrawLine(outbone_1.x,outbone_1.y,outbone_2.x,outbone_2.y,YELLOW,pDevice); } if(opt.esp.skel2==6) { DrawLine(outbone_1.x,outbone_1.y,outbone_2.x,outbone_2.y,DEEPSKYBLUE,pDevice); } if(opt.esp.skel2==7) { DrawLine(outbone_1.x,outbone_1.y,outbone_2.x,outbone_2.y,GOLD2,pDevice); } if(opt.esp.skel2==8) { DrawLine(outbone_1.x,outbone_1.y,outbone_2.x,outbone_2.y,PURPLE,pDevice); } } // DrawLine_c(outbone_1.x,outbone_1.y,outbone_2.x,outbone_2.y,D3DCOLOR_ARGB(255, 255, 255, 255),2); } /*void DrawLine_c(float x, float y, float w, float h,DWORD color,int whightline) { D3DXVECTOR2 vLine1[2]; vLine1[0].x = x; vLine1[0].y = y; vLine1[1].x = w; vLine1[1].y = h; g_pLine->SetWidth(whightline); g_pLine->SetAntialias(false); g_pLine->SetGLLines(false); g_pLine->Begin(); g_pLine->Draw(vLine1, 2, color);//ab2489 g_pLine->End(); }*/ int kiriliza_kod[] = { 1040,//A 1041,//Б 1042,//В 1043,//Г 1044,//Д 1045,//Е 1046,//Ж 1047,//З 1048,//И 1049,//Й 1050,//К 1051,//Л 1052,//М 1053,//Н 1054,//О 1055,//П 1056,//Р 1057,//С 1058,//Т 1059,//У 1060,//Ф 1061,//Х 1062,//Ц 1063,//Ч 1064,//Ш 1065,//Щ 1066,//Ъ 1067,//Ы 1068,//Ь 1069,//Э 1070,//Ю 1071,//Я 1072,//а 1073,//б 1074,//в 1075,//г 1076,//д 1077,//е 1078,//ж 1079,//з 1080,//и 1081,//й 1082,//к 1083,// 1084,// 1085,// 1086,// 1087,// 1088,// 1089,// 1090,// 1091,// 1092,// 1093,// 1094,// 1095,// 1096,// 1097,// 1098,// 1099,// 1100,// 1101,// 1102,// 1103,// 95,// _ 45,//- 46,//. 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 44 }; char *alf[] = { "А", "Б", "В", "Г", "Д", "Е", "Ж", "З", "И", "Й", "К", "Л", "М", "Н", "О", "П", "Р", "С", "Т", "У", "Ф", "Х", "Ц", "Ч", "Ш", "Щ", "Ъ", "Ы", "Ь", "Э", "Ю", "Я", "а", "б", "в", "г", "д", "е", "ж", "з", "и", "й", "к", "л", "м", "н", "о", "п", "р", "с", "т", "у", "ф", "х", "ц", "ч", "ш", "щ", "ъ", "ы", "ь", "э", "ю", "я", "_", "-", ".", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "," }; void DrawString(int x, int y, DWORD color, const char *fmt, ...) { char buf[1024] = {'\0'}; va_list va_alist; va_start(va_alist, fmt); vsprintf(buf, fmt, va_alist); va_end(va_alist); Menu.font->DrawTextA(x,y,color,buf); } void Draw_name(const char *name,Vec3 coors) { using namespace std; WStr names_2; char* tst[40]; int size = strlen(name); UTF8ToWStr(name,names_2);// 410 = 1040 A for (size_t i = 0; i < names_2.length(); i++) { int fuck = names_2[i]; for(int w=0;w<76;w++) if(fuck == kiriliza_kod[w]) { tst[i]=alf[w]; } if((opt.esp.niks==1) || (opt.esp.niks_m9so==1)) { DrawString((coors.x)+7.7*i, coors.y-33,RED,"%s",tst[i]); } if((opt.esp.niks==2) || (opt.esp.niks_m9so==2)) { DrawString((coors.x)+7.7*i, coors.y-33,BLUE,"%s",tst[i]); } if((opt.esp.niks==3) || (opt.esp.niks_m9so==3)) { DrawString((coors.x)+7.7*i, coors.y-33,GREEN,"%s",tst[i]); } if((opt.esp.niks==4) || (opt.esp.niks_m9so==4)) { DrawString((coors.x)+7.7*i, coors.y-33,WHITE,"%s",tst[i]); } if((opt.esp.niks==5) || (opt.esp.niks_m9so==5)) { DrawString((coors.x)+7.7*i, coors.y-33,YELLOW,"%s",tst[i]); } if((opt.esp.niks==6) || (opt.esp.niks_m9so==6)) { DrawString((coors.x)+7.7*i, coors.y-33,DEEPSKYBLUE,"%s",tst[i]); } if((opt.esp.niks==7) || (opt.esp.niks_m9so==7)) { DrawString((coors.x)+7.7*i, coors.y-33,GOLD2,"%s",tst[i]); } if((opt.esp.niks==8) || (opt.esp.niks_m9so==8)) { DrawString((coors.x)+7.7*i, coors.y-33,PURPLE,"%s",tst[i]); } } } void skeleton( IEntity* pEnt,LPDIRECT3DDEVICE9 pDevice) { two_bone_select(3,4,pEnt,pDevice); two_bone_select(3,5,pEnt,pDevice); two_bone_select(3,8,pEnt,pDevice); two_bone_select(8,9,pEnt,pDevice); two_bone_select(9,13,pEnt,pDevice); two_bone_select(13,47,pEnt,pDevice); two_bone_select(13,24,pEnt,pDevice); two_bone_select(47,68,pEnt,pDevice); // локти право two_bone_select(24,27,pEnt,pDevice); // локти левое two_bone_select(68,57,pEnt,pDevice); two_bone_select(27,34,pEnt,pDevice); two_bone_select(4,70,pEnt,pDevice); two_bone_select(70,71,pEnt,pDevice); two_bone_select(5,77,pEnt,pDevice); two_bone_select(77,78,pEnt,pDevice); } void namebbbox(AABB aabb,EntityId EntityId,IEntity* pEnt,int ifname) { DWORD color; //IGameRules* Rules = GetIGameRules(); //int color_id = Rules->GetTeam(EntityId); Vec3 min,max; W2S(aabb.min,min); W2S(aabb.max,max); // DrawLine_c(min.x,min.y,min.x,max.y ,color , 3 );// | // DrawLine_c(min.x,max.y,max.x,max.y ,color , 3 );// -----> // DrawLine_c(max.x,max.y,max.x,min.y ,color , 3 );// | // DrawLine_c(max.x,min.y,min.x,min.y ,color , 3 );// <----- if(ifname) { Draw_name(pEnt->GetName(),min); } } void aabbbox1(AABB aabb, DWORD color) { Vec3 min,max; W2S(aabb.min,min); W2S(aabb.max,max); DrawLine_c(min.x,min.y,min.x,max.y ,color , 3 );// | DrawLine_c(min.x,max.y,max.x,max.y ,color , 3 );// -----> DrawLine_c(max.x,max.y,max.x,min.y ,color , 3 );// | DrawLine_c(max.x,min.y,min.x,min.y ,color , 3 );// <----- // DrawLine_c(min.x,min.y,max.x,max.y ,color , 3 ); //DrawString(min.x,min.y, D3DCOLOR_ARGB(255, 255, 255, 255),"min"); //DrawString(max.x,max.y, D3DCOLOR_ARGB(255, 255, 255, 255),"max"); } void aabbbox(AABB aabb,IEntity* pEnt,LPDIRECT3DDEVICE9 pDevice) { Vec3 min,max; W2S(aabb.min,min);W2S(aabb.max,max); Menu.DrawBorder(min.x,max.y,max.x-min.x,min.y-max.y, RED, pDevice); } void Draw_boxesp(LPDIRECT3DDEVICE9 pDevice) { SSystemGlobalEnvironment* m_SSystemGlobalEnvironment = GetSSystemGlobalEnvironment(); if(m_SSystemGlobalEnvironment && GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()) { IActor* MyActor = GetIMyIActor(); IGameRules* Rules = GetIGameRules(); int myid = MyActor->getEntityId; int my_team = Rules->GetTeam(MyActor->getEntityId); if(MyActor) { IActorIteratorPtr m_IActorIterator = GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()->CreateActorIterator(); if(m_IActorIterator.get()->Count() > 1) for(;IActor* Player = m_IActorIterator.get()->Next();) { IEntity* pEnt = Player->getIEntity; AABB ads; pEnt->GetWorldBounds(ads); if( (!Player) || (!pEnt) )continue; int Player_team = Rules->GetTeam(Player->getEntityId); if((Player->IsDead() == false) && (Player->getEntityId != myid) && (Player_team != my_team)) { aabbbox(ads,pEnt,pDevice); } } } } } void aabbbox(AABB aabb,EntityId EntityId,IEntity* pEnt/*,int ifname */) { DWORD color; IGameRules* Rules = GetIGameRules(); int color_id = Rules->GetTeam(EntityId); //////////////////////////////////////////////////////////////////////////// if((opt.esp.warface==1)) { if(color_id == 1){color = RED;}//warface if(color_id == 2){color = RED;}//warface if(color_id == 3){color = RED;}//warface } if((opt.esp.warface==2)) { if(color_id == 1){color = BLUE;}//warface if(color_id == 2){color = BLUE;}//warface if(color_id == 3){color = BLUE;}//warface } if((opt.esp.warface==3) ) { if(color_id == 1){color = GREEN;}//warface if(color_id == 2){color = GREEN;}//warface if(color_id == 3){color = GREEN;}//warface } if((opt.esp.warface==4)) { if(color_id == 1){color = WHITE;}//warface if(color_id == 2){color = WHITE;}//warface if(color_id == 3){color = WHITE;}//warface } if((opt.esp.warface==5)) { if(color_id == 1){color = YELLOW;}//warface if(color_id == 2){color = YELLOW;}//warface if(color_id == 3){color = YELLOW;}//warface } if((opt.esp.warface==6)) { if(color_id == 1){color = DEEPSKYBLUE;}//warface if(color_id == 2){color = DEEPSKYBLUE;}//warface if(color_id == 3){color = DEEPSKYBLUE;}//warface } if((opt.esp.warface==7)) { if(color_id == 1){color = GOLD2;}//warface if(color_id == 2){color = GOLD2;}//warface if(color_id == 3){color = GOLD2;}//warface } if((opt.esp.warface==8)) { if(color_id == 1){color = PURPLE;}//warface if(color_id == 2){color = PURPLE;}//warface if(color_id == 3){color = PURPLE;}//warface } Vec3 min,max; W2S(aabb.min,min); W2S(aabb.max,max); DrawLine_c(min.x,min.y,min.x,max.y ,color , 3 );// | DrawLine_c(min.x,max.y,max.x,max.y ,color , 3 );// -----> DrawLine_c(max.x,max.y,max.x,min.y ,color , 3 );// | DrawLine_c(max.x,min.y,min.x,min.y ,color , 3 );// <----- // if(ifname) //{ // Draw_name(pEnt->GetName(),min); // } //DrawLine_c(min.x,min.y,max.x,max.y ,color , 3 ); //DrawString(min.x,min.y, D3DCOLOR_ARGB(255, 255, 255, 255),"min"); //DrawString(max.x,max.y, D3DCOLOR_ARGB(255, 255, 255, 255),"max"); } void Smena_nika(LPDIRECT3DDEVICE9 pDevice) { if(g_pLine == NULL) D3DXCreateLine(pDevice, &g_pLine); SSystemGlobalEnvironment* m_SSystemGlobalEnvironment = GetSSystemGlobalEnvironment(); if(m_SSystemGlobalEnvironment && GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()) { CEntityClass* Entity; IActor* MyActor = GetIMyIActor(); if(MyActor) { IActorIteratorPtr m_IActorIterator = GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()->CreateActorIterator(); if(m_IActorIterator.get()->Count() > 1) for(;IActor* Player = m_IActorIterator.get()->Next();) { AABB aabbbb; DWORD color; IEntity* pEnt = Player->getIEntity; pEnt->GetWorldBounds(aabbbb); int myid = MyActor->getEntityId; IGameRules* Rules = GetIGameRules(); EntityId Enti; int color_id = Rules->GetTeam(Enti); int my_team = Rules->GetTeam(MyActor->getEntityId); if(opt.other.nik) { MyActor->getIEntity->SetName("SHUSHHAK"); } } } } } void BOX_ESP_m9so(LPDIRECT3DDEVICE9 pDevice) { SSystemGlobalEnvironment* m_SSystemGlobalEnvironment = GetSSystemGlobalEnvironment(); if(m_SSystemGlobalEnvironment && GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()) { IActor* MyActor = GetIMyIActor(); IGameRules* Rules = GetIGameRules(); int myid = MyActor->getEntityId; int my_team = Rules->GetTeam(MyActor->getEntityId); if(MyActor) { IActorIteratorPtr m_IActorIterator = GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()->CreateActorIterator(); if(m_IActorIterator.get()->Count() > 1) for(;IActor* Player = m_IActorIterator.get()->Next();) { IEntity* pEnt = Player->getIEntity; AABB ads; pEnt->GetWorldBounds(ads); if( (!Player) || (!pEnt) )continue; int Player_team = Rules->GetTeam(Player->getEntityId); if((Player->IsDead() == false) && (Player->getEntityId != myid)) { aabbbox(ads,pEnt,pDevice); } } } } } void Draw_skeleton_m9so(LPDIRECT3DDEVICE9 pDevice) { SSystemGlobalEnvironment* m_SSystemGlobalEnvironment = GetSSystemGlobalEnvironment(); if(m_SSystemGlobalEnvironment && GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()) { IActor* MyActor = GetIMyIActor(); IGameRules* Rules = GetIGameRules(); int myid = MyActor->getEntityId; int my_team = Rules->GetTeam(MyActor->getEntityId); if(MyActor) { IActorIteratorPtr m_IActorIterator = GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()->CreateActorIterator(); if(m_IActorIterator.get()->Count() > 1) for(;IActor* Player = m_IActorIterator.get()->Next();) { IEntity* pEnt = Player->getIEntity; if( (!Player) || (!pEnt) )continue; int Player_team = Rules->GetTeam(Player->getEntityId); if((Player->IsDead() == false) && (Player->getEntityId != myid)) { skeleton(pEnt,pDevice); } } } } } void Draw_skeleton(LPDIRECT3DDEVICE9 pDevice) { SSystemGlobalEnvironment* m_SSystemGlobalEnvironment = GetSSystemGlobalEnvironment(); if(m_SSystemGlobalEnvironment && GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()) { IActor* MyActor = GetIMyIActor(); IGameRules* Rules = GetIGameRules(); int myid = MyActor->getEntityId; int my_team = Rules->GetTeam(MyActor->getEntityId); if(MyActor) { IActorIteratorPtr m_IActorIterator = GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()->CreateActorIterator(); if(m_IActorIterator.get()->Count() > 1) for(;IActor* Player = m_IActorIterator.get()->Next();) { IEntity* pEnt = Player->getIEntity; if( (!Player) || (!pEnt) )continue; int Player_team = Rules->GetTeam(Player->getEntityId); if((Player->IsDead() == false) && (Player->getEntityId != myid) && (Player_team != my_team)) //if(opt.esp.skel) { skeleton(pEnt,pDevice); } } } } } void Draw_names(LPDIRECT3DDEVICE9 pDevice) { SSystemGlobalEnvironment* m_SSystemGlobalEnvironment = GetSSystemGlobalEnvironment(); if(m_SSystemGlobalEnvironment && GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()) { CEntityClass* Entity; IActor* MyActor = GetIMyIActor(); if(MyActor) { IActorIteratorPtr m_IActorIterator = GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()->CreateActorIterator(); if(m_IActorIterator.get()->Count() > 1) for(;IActor* Player = m_IActorIterator.get()->Next();) { AABB aabbbb; //IEntity* Titi; //DWORD color; //Vec3 Vec3; IEntity* pEnt = Player->getIEntity; pEnt->GetWorldBounds(aabbbb); int myid = MyActor->getEntityId; IGameRules* Rules = GetIGameRules(); EntityId Enti; int color_id = Rules->GetTeam(Enti); int my_team = Rules->GetTeam(MyActor->getEntityId); { if( (!Player) || (!pEnt) )continue; int Player_team = Rules->GetTeam(Player->getEntityId); int myid = MyActor->getEntityId; IGameRules* Rules = GetIGameRules(); EntityId Enti; int color_id = Rules->GetTeam(Enti); if((Player->IsDead() == false) && (Player->getEntityId != myid) && (Player_team != my_team)) namebbbox(aabbbb,Player->getEntityId,pEnt,opt.esp.niks); } } } } } void Draw_distanse(LPDIRECT3DDEVICE9 pDevice) { SSystemGlobalEnvironment* m_SSystemGlobalEnvironment = GetSSystemGlobalEnvironment(); if(m_SSystemGlobalEnvironment && GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()) { IActor* MyActor = GetIMyIActor(); IGameRules* Rules = GetIGameRules(); int myid = MyActor->getEntityId; int my_team = Rules->GetTeam(MyActor->getEntityId); Vec3 mypos = MyActor->getIEntity->GetWorldPos(); if(MyActor) { IActorIteratorPtr m_IActorIterator = GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()->CreateActorIterator(); if(m_IActorIterator.get()->Count() > 1) for(;IActor* Player = m_IActorIterator.get()->Next();) { IEntity* pEnt = Player->getIEntity; if( (!Player) || (!pEnt) )continue; int Player_team = Rules->GetTeam(Player->getEntityId); Vec3 playerpos = pEnt->GetWorldPos(); if((Player->IsDead() == false) && (Player->getEntityId != myid) && (Player_team != my_team)) { float distanse = sqrt((playerpos.x-mypos.x)+(playerpos.y-mypos.y)+(playerpos.z-mypos.z)); Vec3 Outwrite; W2S(playerpos,Outwrite); if(opt.esp.dist==1) { if(Outwrite.x>0 && Outwrite.y>0){ DrawString(Outwrite.x,Outwrite.y,RED,"%f",distanse);} } if(opt.esp.dist==2) { if(Outwrite.x>0 && Outwrite.y>0){ DrawString(Outwrite.x,Outwrite.y,BLUE,"%f",distanse);} } if(opt.esp.dist==3) { if(Outwrite.x>0 && Outwrite.y>0){ DrawString(Outwrite.x,Outwrite.y,GREEN,"%f",distanse);} } if(opt.esp.dist==4) { if(Outwrite.x>0 && Outwrite.y>0){ DrawString(Outwrite.x,Outwrite.y,WHITE,"%f",distanse);} } if(opt.esp.dist==5) { if(Outwrite.x>0 && Outwrite.y>0){ DrawString(Outwrite.x,Outwrite.y,YELLOW,"%f",distanse);} } if(opt.esp.dist==6) { if(Outwrite.x>0 && Outwrite.y>0){ DrawString(Outwrite.x,Outwrite.y,DEEPSKYBLUE,"%f",distanse);} } if(opt.esp.dist==7) { if(Outwrite.x>0 && Outwrite.y>0){ DrawString(Outwrite.x,Outwrite.y,GOLD2,"%f",distanse);} } if(opt.esp.dist==8) { if(Outwrite.x>0 && Outwrite.y>0){ DrawString(Outwrite.x,Outwrite.y,PURPLE,"%f",distanse);} } } } } } } void Draw_LineESP(LPDIRECT3DDEVICE9 pDevice) { SSystemGlobalEnvironment* m_SSystemGlobalEnvironment = GetSSystemGlobalEnvironment(); if(m_SSystemGlobalEnvironment && GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()) { IActor* MyActor = GetIMyIActor(); IGameRules* Rules = GetIGameRules(); int myid = MyActor->getEntityId; int my_team = Rules->GetTeam(MyActor->getEntityId); Vec3 mypos = MyActor->getIEntity->GetWorldPos(); D3DVIEWPORT9 viewP; pDevice->GetViewport( &viewP ); DWORD ScreenCenterX = viewP.Width / 2; DWORD ScreenCenterY = viewP.Height / 2; if(MyActor) { IActorIteratorPtr m_IActorIterator = GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()->CreateActorIterator(); if(m_IActorIterator.get()->Count() > 1) for(;IActor* Player = m_IActorIterator.get()->Next();) { IEntity* pEnt = Player->getIEntity; if( (!Player) || (!pEnt) )continue; int Player_team = Rules->GetTeam(Player->getEntityId); Vec3 playerpos = pEnt->GetWorldPos(); if((Player->IsDead() == false) && (Player->getEntityId != myid) && (Player_team != my_team)) { float distanse = sqrt((playerpos.x-mypos.x)+(playerpos.y-mypos.y)+(playerpos.z-mypos.z)); Vec3 Head = GetBonePositionByID(pEnt,13); Vec3 Outwrite; W2S(Head,Outwrite); if(opt.esp.line==1) { if(Outwrite.x>0 && Outwrite.y>0){ DrawLine(ScreenCenterX, ScreenCenterY,Outwrite.x,Outwrite.y,RED, pDevice);} } if(opt.esp.line==2) { if(Outwrite.x>0 && Outwrite.y>0){ DrawLine(ScreenCenterX, ScreenCenterY,Outwrite.x,Outwrite.y,BLUE, pDevice);} } if(opt.esp.line==3) { if(Outwrite.x>0 && Outwrite.y>0){ DrawLine(ScreenCenterX, ScreenCenterY,Outwrite.x,Outwrite.y,GREEN, pDevice);} } if(opt.esp.line==4) { if(Outwrite.x>0 && Outwrite.y>0){ DrawLine(ScreenCenterX, ScreenCenterY,Outwrite.x,Outwrite.y,WHITE, pDevice);} } if(opt.esp.line==5) { if(Outwrite.x>0 && Outwrite.y>0){ DrawLine(ScreenCenterX, ScreenCenterY,Outwrite.x,Outwrite.y,YELLOW, pDevice);} } if(opt.esp.line==6) { if(Outwrite.x>0 && Outwrite.y>0){ DrawLine(ScreenCenterX, ScreenCenterY,Outwrite.x,Outwrite.y,DEEPSKYBLUE, pDevice);} } if(opt.esp.line==7) { if(Outwrite.x>0 && Outwrite.y>0){ DrawLine(ScreenCenterX, ScreenCenterY,Outwrite.x,Outwrite.y,GOLD2, pDevice);} } if(opt.esp.line==8) { if(Outwrite.x>0 && Outwrite.y>0){ DrawLine(ScreenCenterX, ScreenCenterY,Outwrite.x,Outwrite.y,PURPLE, pDevice);} } } } } } } int id2; void Draw_LineESP_m9so(LPDIRECT3DDEVICE9 pDevice) { SSystemGlobalEnvironment* m_SSystemGlobalEnvironment = GetSSystemGlobalEnvironment(); if(m_SSystemGlobalEnvironment && GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()) { IActor* MyActor = GetIMyIActor(); IGameRules* Rules = GetIGameRules(); id2 = MyActor->getEntityId; int my_team = Rules->GetTeam(MyActor->getEntityId); Vec3 mypos = MyActor->getIEntity->GetWorldPos(); D3DVIEWPORT9 viewP; pDevice->GetViewport( &viewP ); DWORD ScreenCenterX = viewP.Width / 2; DWORD ScreenCenterY = viewP.Height / 2; if(MyActor) { IActorIteratorPtr m_IActorIterator = GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()->CreateActorIterator(); if(m_IActorIterator.get()->Count() > 1) for(;IActor* Player = m_IActorIterator.get()->Next();) { IEntity* pEnt = Player->getIEntity; if( (!Player) || (!pEnt) )continue; int Player_team = Rules->GetTeam(Player->getEntityId); Vec3 playerpos = pEnt->GetWorldPos(); if((Player->IsDead() == false) && (Player->getEntityId != id2)) { float distanse = sqrt((playerpos.x-mypos.x)+(playerpos.y-mypos.y)+(playerpos.z-mypos.z)); Vec3 Head = GetBonePositionByID(pEnt,13); Vec3 Outwrite; W2S(Head,Outwrite); if(opt.esp.line_m9so==1) { if(Outwrite.x>0 && Outwrite.y>0){ DrawLine(ScreenCenterX, ScreenCenterY,Outwrite.x,Outwrite.y,RED, pDevice);} } if(opt.esp.line_m9so==2) { if(Outwrite.x>0 && Outwrite.y>0){ DrawLine(ScreenCenterX, ScreenCenterY,Outwrite.x,Outwrite.y,BLUE, pDevice);} } if(opt.esp.line_m9so==3) { if(Outwrite.x>0 && Outwrite.y>0){ DrawLine(ScreenCenterX, ScreenCenterY,Outwrite.x,Outwrite.y,GREEN, pDevice);} } if(opt.esp.line_m9so==4) { if(Outwrite.x>0 && Outwrite.y>0){ DrawLine(ScreenCenterX, ScreenCenterY,Outwrite.x,Outwrite.y,WHITE, pDevice);} } if(opt.esp.line_m9so==5) { if(Outwrite.x>0 && Outwrite.y>0){ DrawLine(ScreenCenterX, ScreenCenterY,Outwrite.x,Outwrite.y,YELLOW, pDevice);} } if(opt.esp.line_m9so==6) { if(Outwrite.x>0 && Outwrite.y>0){ DrawLine(ScreenCenterX, ScreenCenterY,Outwrite.x,Outwrite.y,DEEPSKYBLUE, pDevice);} } if(opt.esp.line_m9so==7) { if(Outwrite.x>0 && Outwrite.y>0){ DrawLine(ScreenCenterX, ScreenCenterY,Outwrite.x,Outwrite.y,GOLD2, pDevice);} } if(opt.esp.line_m9so==8) { if(Outwrite.x>0 && Outwrite.y>0){ DrawLine(ScreenCenterX, ScreenCenterY,Outwrite.x,Outwrite.y,PURPLE, pDevice);} } } } } } } void Draw_names_m9so(LPDIRECT3DDEVICE9 pDevice) { SSystemGlobalEnvironment* m_SSystemGlobalEnvironment = GetSSystemGlobalEnvironment(); if(m_SSystemGlobalEnvironment && GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()) { CEntityClass* Entity; IActor* MyActor = GetIMyIActor(); if(MyActor) { IActorIteratorPtr m_IActorIterator = GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()->CreateActorIterator(); if(m_IActorIterator.get()->Count() > 1) for(;IActor* Player = m_IActorIterator.get()->Next();) { AABB aabbbb; //IEntity* Titi; //DWORD color; //Vec3 Vec3; IEntity* pEnt = Player->getIEntity; pEnt->GetWorldBounds(aabbbb); int myid = MyActor->getEntityId; IGameRules* Rules = GetIGameRules(); EntityId Enti; int color_id = Rules->GetTeam(Enti); int my_team = Rules->GetTeam(MyActor->getEntityId); { if( (!Player) || (!pEnt) )continue; int Player_team = Rules->GetTeam(Player->getEntityId); int myid = MyActor->getEntityId; IGameRules* Rules = GetIGameRules(); EntityId Enti; int color_id = Rules->GetTeam(Enti); if((Player->IsDead() == false) && (Player->getEntityId != myid)) namebbbox(aabbbb,Player->getEntityId,pEnt,opt.esp.niks_m9so); } } } } } void Draw_distanse_m9so(LPDIRECT3DDEVICE9 pDevice) { SSystemGlobalEnvironment* m_SSystemGlobalEnvironment = GetSSystemGlobalEnvironment(); if(m_SSystemGlobalEnvironment && GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()) { IActor* MyActor = GetIMyIActor(); IGameRules* Rules = GetIGameRules(); id2 = MyActor->getEntityId; int my_team = Rules->GetTeam(MyActor->getEntityId); Vec3 mypos = MyActor->getIEntity->GetWorldPos(); if(MyActor) { IActorIteratorPtr m_IActorIterator = GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()->CreateActorIterator(); if(m_IActorIterator.get()->Count() > 1) for(;IActor* Player = m_IActorIterator.get()->Next();) { IEntity* pEnt = Player->getIEntity; if( (!Player) || (!pEnt) )continue; int Player_team = Rules->GetTeam(Player->getEntityId); Vec3 playerpos = pEnt->GetWorldPos(); if((Player->IsDead() == false) && (Player->getEntityId != id2)) { float distanse = sqrt((playerpos.x-mypos.x)+(playerpos.y-mypos.y)+(playerpos.z-mypos.z)); Vec3 Outwrite; W2S(playerpos,Outwrite); if(opt.esp.dist_m9so==1) { if(Outwrite.x>0 && Outwrite.y>0){ DrawString(Outwrite.x,Outwrite.y,RED,"%f",distanse);} } if(opt.esp.dist_m9so==2) { if(Outwrite.x>0 && Outwrite.y>0){ DrawString(Outwrite.x,Outwrite.y,BLUE,"%f",distanse);} } if(opt.esp.dist_m9so==3) { if(Outwrite.x>0 && Outwrite.y>0){ DrawString(Outwrite.x,Outwrite.y,GREEN,"%f",distanse);} } if(opt.esp.dist_m9so==4) { if(Outwrite.x>0 && Outwrite.y>0){ DrawString(Outwrite.x,Outwrite.y,WHITE,"%f",distanse);} } if(opt.esp.dist_m9so==5) { if(Outwrite.x>0 && Outwrite.y>0){ DrawString(Outwrite.x,Outwrite.y,YELLOW,"%f",distanse);} } if(opt.esp.dist_m9so==6) { if(Outwrite.x>0 && Outwrite.y>0){ DrawString(Outwrite.x,Outwrite.y,DEEPSKYBLUE,"%f",distanse);} } if(opt.esp.dist_m9so==7) { if(Outwrite.x>0 && Outwrite.y>0){ DrawString(Outwrite.x,Outwrite.y,GOLD2,"%f",distanse);} } if(opt.esp.dist_m9so==8) { if(Outwrite.x>0 && Outwrite.y>0){ DrawString(Outwrite.x,Outwrite.y,PURPLE,"%f",distanse);} } } } } } } void Add_magnitik(LPDIRECT3DDEVICE9 pDevice) { IActor* MyActor = GetIMyIActor(); IGameRules* Rules = GetIGameRules(); id2 = MyActor->getEntityId; int myid = MyActor->getEntityId; int my_team = Rules->GetTeam(MyActor->getEntityId); Vec3 mypos = MyActor->getIEntity->GetWorldPos(); Vec3 adpos; adpos.x= mypos.x+1; adpos.y= mypos.y+1; adpos.z= mypos.z+1; if(MyActor) { IActorIteratorPtr m_IActorIterator = GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()->CreateActorIterator(); if(m_IActorIterator.get()->Count() > 1) for(;IActor* Player = m_IActorIterator.get()->Next();) { if((Player->IsDead() == true) && (Player->getEntityId = myid))return Player->getIEntity->SetPos(adpos);} } } void Aimbot( IActor* Player,// противник IActor* My_Player // игрок ) { IEntity* pEnt = Player->getIEntity; // интити противника IEntity* Local = My_Player->getIEntity; // интити игрока if( (pEnt == NULL ) && (Local == NULL) )return; // проверка на адреса Vec3 xTarget = pEnt->GetWorldPos(); //координаты противника Vec3 xLocal = Local->GetWorldPos(); // наши коры Vec3 Out,tOut; // переменные для выхода Out = GetBonePositionByID(pEnt,13); //наш аим tOut = GetBonePositionByID(Local,13);//офсет Vec3 Aim; Aim.x = Out.x - tOut.x; // нахождение аима на игрока Aim.y = Out.y - tOut.y; // нахождение аима на игрока Aim.z = Out.z - tOut.z; // нахождение аима на игрока Quat To_Move = Quat::CreateRotationVDir(Aim.normalize()); // создание ротации Local->SetRotation(To_Move);// передвижение } void aim(int id) { SSystemGlobalEnvironment* m_SSystemGlobalEnvironment = GetSSystemGlobalEnvironment(); if(m_SSystemGlobalEnvironment && GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()) { IActor* MyActor = GetIMyIActor(); IGameRules* Rules = GetIGameRules(); IActorIteratorPtr m_IActorIterator = GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()->CreateActorIterator(); for(;IActor* Players = m_IActorIterator.get()->Next();) { int pr_id2 = Players->getEntityId; Vec3 out; Vec3 Head = GetBonePositionByID(Players->getIEntity,13); W2S(Head,out); if(pr_id2 == id) { //if(isVisible(Head)) { //DrawString(out.x,out.y,WHITE,"X"); Aimbot(Players,MyActor); } } } } } void To_Test_For_Move() { SSystemGlobalEnvironment* m_SSystemGlobalEnvironment = GetSSystemGlobalEnvironment(); if(m_SSystemGlobalEnvironment && GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()) { IActor* MyActor = GetIMyIActor(); IGameRules* Rules = GetIGameRules(); IActorIteratorPtr m_IActorIterator = GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()->CreateActorIterator(); int max_players = m_IActorIterator.get()->Count(); int myid = MyActor->getEntityId; int my_team = Rules->GetTeam(MyActor->getEntityId); Vec3 my_pos = MyActor->getIEntity->GetWorldPos(); int frags = 0; float dist[64]; int frags_id[64]; int stok = 0; //if(m_IActorIterator.get()->Count() > 1) for(;IActor* Player = m_IActorIterator.get()->Next();) { int pr_id = Player->getEntityId; int pr_team = Rules->GetTeam(Player->getEntityId); Vec3 pos = Player->getIEntity->GetWorldPos(); Vec3 Head = GetBonePositionByID(Player->getIEntity,13); float distanse = sqrt( (pos.x-my_pos.x)*(pos.x-my_pos.x) + (pos.y-my_pos.y)*(pos.y-my_pos.y) + (pos.z-my_pos.z)*(pos.z-my_pos.z)); bool Visible = isVisible(Head); if(opt.aim.sten==0){ if((myid != pr_id) && (my_team != pr_team) && (Player->IsDead() == false)) { dist [frags]= distanse; frags_id [frags]= pr_id; frags+=1; // DrawString(10,25+15*frags,WHITE,"dist[%d] = %f",frags,dist[frags-1]); } //мои враги } else if(opt.aim.sten==1){ if((myid != pr_id) && (my_team != pr_team) && (Player->IsDead() == false) && Visible) { dist [frags]= distanse; frags_id [frags]= pr_id; frags+=1; // DrawString(10,25+15*frags,WHITE,"dist[%d] = %f",frags,dist[frags-1]); } //мои враги } // DrawString(10,10,WHITE,"frags = %d",frags); int i = 0; while(i < frags) { // DrawString(10,25+15*i,WHITE,"dist[%d] = %f",i+1,dist[i]); if(dist [i]< dist[stok]){ stok = i; } i+=1; } aim(frags_id[stok]); // DrawString(10,150,WHITE,"stok[%d] id[%d]",stok+1,frags_id[stok]); } } } void bar_esp() { SSystemGlobalEnvironment* m_SSystemGlobalEnvironment = GetSSystemGlobalEnvironment(); if(m_SSystemGlobalEnvironment && GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()) { IActor* MyActor = GetIMyIActor(); if(MyActor) { IActorIteratorPtr m_IActorIterator = GetSSystemGlobalEnvironment()->GetIGame->getIGameFramework->GetIActorSystem()->CreateActorIterator(); if(m_IActorIterator.get()->Count() > 1) for(;IActor* Player = m_IActorIterator.get()->Next();) { AABB aabbbb; IEntity* pEnt = Player->getIEntity; pEnt->GetWorldBounds(aabbbb); int myid = MyActor->getEntityId; IGameRules* Rules = GetIGameRules(); EntityId Enti; int color_id = Rules->GetTeam(Enti); int my_team = Rules->GetTeam(MyActor->getEntityId); { if( (!Player) || (!pEnt) )continue; int Player_team = Rules->GetTeam(Player->getEntityId); int myid = MyActor->getEntityId; IGameRules* Rules = GetIGameRules(); int color_id = Rules->GetTeam(Enti); Vec3 out; W2S(aabbbb.min,out); if((Player->IsDead() == false) && (Player->getEntityId != myid) && (Player_team != my_team)) DrawString(out.x,out.y,WHITE,"Armor [%d/%d]",Player->GetArmor(),Player->GetMaxArmor()); DrawString(out.x,out.y+13,WHITE,"Health [%d/%d]",Player->GetHealth(),Player->GetMaxHealth()); } } } } }