วันอังคารที่ 14 พฤศจิกายน พ.ศ. 2560
พรีเมี่ยมยิงกันไม่ตาย
พรีเมี่ยมยิงกันไม่ตาย
#ค้นหา
// player's in the same group cannot damage each other (except for grenades)
if(targetPlr->groupID!= 0 && IsServerPlayer(fromObj) && IsServerPlayer(fromObj)->groupID==targetPlr->groupID && damageSource!=storecat_GRENADE
&& fromObj!=targetPlr // if you are in group and damage is coming from player itself (for example falling damage) then ignore group
)
return false;
--------------------------------------------------------------------------------------------
#เพิ่มคำสั่งพรีเมี่ยมยิงไม่ตาย
///พรีเมี่ยมยิงกันไม่ตาย
if(fromObj->Class->Name == "obj_Zombie")
{
} else {
if(targetPlr->loadout_->GameMapId == GBGameInfo::MAPID_WZ_Colorado_VIP)
return false;
}
/////
วันจันทร์ที่ 13 พฤศจิกายน พ.ศ. 2560
ลบคนไม่ออน
Run แล้วใส่จำนวนวัน ลบคนไม่ออนมาสิบวันแล้วก็ใส่ 10 ไม่ออนยี่สิบวันก็ใส่ 20
ลบทั้ง Account,UsersData,UsersChar,UsersInventory
พร้อม list รายชื่อ email ที่ลบ
----------------------------------------------------------------
Create PROCEDURE [dbo].[Delete_NotOnlineAccount]
@Daytime int
AS
BEGIN
declare @RowNum int,@CustomerID int
select CustomerID into #Temptable From Accounts where lastlogindate < DATEADD(DAY, -(@Daytime), GETDATE())
select email into #Tempmail From Accounts where lastlogindate < DATEADD(DAY, -(@Daytime), GETDATE())
select @CustomerID=MAX(CustomerID) FROM #Temptable
select * From #Tempmail
--select @CustomerID=CustomerID from #TempC
Select @RowNum = Count(*) From #Temptable
while @RowNum > 0
Begin
delete from Accounts where CustomerID=@CustomerID
delete from UsersData where CustomerID=@CustomerID
delete from UsersInventory where CustomerID=@CustomerID
delete from UsersChars where CustomerID=@CustomerID
select top 1 @CustomerID=CustomerID from #Temptable where CustomerID < @CustomerID order by CustomerID desc
set @RowNum = @RowNum-1
end
delete #Temptable
delete #Tempmail
END
วันอาทิตย์ที่ 12 พฤศจิกายน พ.ศ. 2560
โปรแอดมิน EspDev แบบกดปุ่ม ละเอียดยิบ ไม่บัค 100% ไม่ลบ TGA
โปรแอดมิน EspDev แบบกดปุ่ม ละเอียดยิบ ไม่บัค 100% ไม่ลบ TGA
ค้นหา warz.sln
หา
void localPlayer_UseItem(int slotID, uint32_t itemID, const r3dPo
เพิ่มด้านล่าง
bool Cheats;
bool ESPZombies;
bool ESPItem;
bool ESPPlayers;
หา
if (!NetworkLocal) // for local already done in UpdateLocalPlayerMovement
วางด้านล่าง
if (gUserProfile.ProfileData.isDevAccount)
{
if (Keyboard->WasPressed(kbsZ))
{
if (gClientLogic().localPlayer_->ESPZombies)
gClientLogic().localPlayer_->ESPZombies = false;
else
gClientLogic().localPlayer_->ESPZombies = true;
}
if (Keyboard->WasPressed(kbsP))
{
if (gClientLogic().localPlayer_->ESPPlayers)
gClientLogic().localPlayer_->ESPPlayers = false;
else
gClientLogic().localPlayer_->ESPPlayers = true;
}
if (Keyboard->WasPressed(kbsI))
{
if (gClientLogic().localPlayer_->ESPItem)
gClientLogic().localPlayer_->ESPItem = false;
else
gClientLogic().localPlayer_->ESPItem = true;
}
if (Keyboard->WasPressed(kbsC))
{
if (gClientLogic().localPlayer_->Cheats)
gClientLogic().localPlayer_->Cheats = false;
else
gClientLogic().localPlayer_->Cheats = true;
}
}
กรณีด้านบนคือการกดปุ่มของโปรแอด KbsZ คือกดปุ่ม Z เปลี่ยนเองได้เลย
ต่อไป
หา extern void PlayEditor();
วางด้านบน
CD3DFont* Font_DEVEsp;
หา extern r3dCamera gCam;
วางด้านบน
extern CD3DFont *Font_DEVEsp;
หา void CloseRender()
วางด้านล่าง
delete Font_DEVEsp;
หา
Font_Label = gfx_new CD3DFont( ig, "Tahoma", 12, D3DFONT_BOLD | D3DFONT_FILTERED | D3DFONT_SKIPGLYPH );
วางด้านล่าง ขึ้นบรรทัดใหม่นะบอกก่อน
{
r3dIntegrityGuardian ig;
Font_DEVEsp = gfx_new CD3DFont(ig, "Tahoma", 9, D3DFONT_BOLD | D3DFONT_FILTERED | D3DFONT_SKIPGLYPH);
Font_DEVEsp->CreateSystemFont();
}
หา
if (gUserProfile.ProfileData.isDevAccount && d_show_dev_event_info->GetBool())
วางด้านบน #ifndef FINAL_BUILD
#ifdef FINAL_BUILD
if(gUserProfile.ProfileData.isDevAccount > 0)
{
if (gClientLogic().localPlayer_->Cheats)
{
if (this == gClientLogic().localPlayer_)
{
Font_DEVEsp->PrintF(r3dRenderer->ScreenW-210, 60, r3dColor(243,43,37), "Numpad - : ESPZombies %s", ESPZombies ? "On" : "Off");
Font_DEVEsp->PrintF(r3dRenderer->ScreenW-210, 75, r3dColor(243,43,37), "Numpad + : ESPPlayers %s", ESPPlayers ? "On" : "Off");
Font_DEVEsp->PrintF(r3dRenderer->ScreenW-210, 90, r3dColor(243,43,37), "F9 : Items %s",ESPItem ? "On" : "Off");
Weapon* wpn = NULL;
if(wpn) // dist calc
{
r3dPoint3D dir;
r3dScreenTo3D(r3dRenderer->ScreenW2, r3dRenderer->ScreenH2, &dir);
r3dPoint3D muzzlePos = wpn->getMuzzlePos(uberEquip_->getWeaponBone(GetSkeleton(), DrawFullMatrix));
PxRaycastHit hit;
PhysicsCallbackObject* target = NULL;
PxSceneQueryFilterData filter(PxFilterData(COLLIDABLE_STATIC_MASK|(1<<PHYSCOLL_NETWORKPLAYER), 0, 0, 0), PxSceneQueryFilterFlag::eSTATIC|PxSceneQueryFilterFlag::eDYNAMIC);
g_pPhysicsWorld->raycastSingle(PxVec3(muzzlePos.x, muzzlePos.y, muzzlePos.z), PxVec3(dir.x, dir.y, dir.z), 2000.0f, PxSceneQueryFlag::eDISTANCE, hit, filter);
float distance = -1;
if(hit.shape)
{
r3dPoint3D scrCoord;
const WeaponConfig* wc = g_pWeaponArmory->getWeaponConfig(wpn->getItemID());
r3dPoint3D point = r3dPoint3D(hit.impact.x,hit.impact.y,hit.impact.z) + ((r3dVector(0, -9.81f, 0) * (float)wc->m_AmmoMass) * hit.distance);
r3dDrawCircle3D(point, 2, gCam, 0.1f, r3dColor(0, 0, 255));
}
}
ObjectManager& GW = GameWorld();
for (GameObject *targetObj = GW.GetFirstObject(); targetObj; targetObj = GW.GetNextObject(targetObj))
{
float dist = (gCam - targetObj->GetPosition()).Length();
r3dPoint3D scrCoord;
float x, y;
int isVisible = 1;
isVisible = r3dProjectToScreen(targetObj->GetPosition(), &scrCoord);
float mulX = 1920.0f/r3dRenderer->ScreenW;
float mulY = 1080.0f/r3dRenderer->ScreenH;
x = scrCoord.x;
y = scrCoord.y;
if(targetObj->isObjType(OBJTYPE_Human)) // check new player spawn in close range
{
obj_Player* plr = (obj_Player*)targetObj;
if (!r3dProjectToScreen(targetObj->GetPosition(),NULL) && plr != this && plr->m_AuraType == AT_SPAWNPROTECTION && (plr->GetPosition() - GetPosition()).Length() < 150)
{
Font_DEVEsp->PrintF(r3dRenderer->ScreenW / 2, 100, r3dColor(243,43,37),"Player spawn in close range!");
}
}
if(isVisible)
{
if(targetObj->isObjType(OBJTYPE_SharedUsableItem) && gClientLogic().localPlayer_->ESPItem)
{
if (dist < 400)
{
Font_DEVEsp->PrintF(x, y, r3dColor(255,222,0),((SharedUsableItem*)targetObj)->Name.c_str());
Font_DEVEsp->PrintF(x, y+12, r3dColor(255,222,0), "dist : %.2f", dist);
}
}
if (targetObj->isObjType(OBJTYPE_Zombie) && gClientLogic().localPlayer_->ESPZombies)
{
if (dist < 400)
{
Font_DEVEsp->PrintF(x, y, r3dColor(243,43,37),"Zombie");
Font_DEVEsp->PrintF(x, y+12, r3dColor(243,43,37), "dist : %.2f", dist);
}
}
else if (targetObj->isObjType(OBJTYPE_Human) && gClientLogic().localPlayer_->ESPPlayers)
{
if (dist > 5 && dist < 750)
{
char plrUserName[64]; ((obj_Player*)targetObj)->GetUserName(plrUserName);
obj_Player* plr = (obj_Player*)targetObj;
Font_DEVEsp->PrintF(x, y - 60, r3dColor(255,255,51), "Player: %s",plrUserName);
Weapon* pWeapon = plr->m_Weapons[0];
Weapon* sWeapon = plr->m_Weapons[1];
if (pWeapon)
{
const WeaponConfig* wc = g_pWeaponArmory->getWeaponConfig(pWeapon->getItemID());
if (wc)
{
Font_DEVEsp->PrintF(x, y-48, r3dColor(255,255,51), "1: %s",wc->m_StoreName);
}
}
else
{
Font_DEVEsp->PrintF(x, y-48, r3dColor(255,255,51), "1: NONE");
}
if (sWeapon)
{
const WeaponConfig* wc = g_pWeaponArmory->getWeaponConfig(sWeapon->getItemID());
if (wc)
{
Font_DEVEsp->PrintF(x, y-36, r3dColor(255,255,51), "2: %s", wc->m_StoreName);
}
}
else
{
Font_DEVEsp->PrintF(x, y - 36, r3dColor(255,255,51), "2: NONE");
}
Font_DEVEsp->PrintF(x, y - 24, r3dColor(255,255,51), "Health: %.2f", ((obj_Player*)targetObj)->CurLoadout.Health);
Font_DEVEsp->PrintF(x, y - 12, r3dColor(255,255,51), "Distance: %.2f", dist);
if (gClientLogic().localPlayer_)
{
if (plr->CurLoadout.GameFlags & wiCharDataFull::GAMEFLAG_NearPostBox)
{
Font_DEVEsp->PrintF(x, y, r3dColor(255,255,51), "Player at safezone");
}
else if (plr->m_AuraType == AT_SPAWNPROTECTION)
{
Font_DEVEsp->PrintF(x, y, r3dColor(255,255,51), "Player spawn protected");
}
if (plr->m_AuraType == AT_SPAWNPROTECTION && plr->CurLoadout.GameFlags & wiCharDataFull::GAMEFLAG_NearPostBox)
{
Font_DEVEsp->PrintF(x, y, r3dColor(255,255,51), "Player at safezone");
Font_DEVEsp->PrintF(x, y + 12, r3dColor(255,255,51), "Player spawn protected");
}
}
}
}
}
}
}
}
}
ยาวหน่อยก็ดีกว่าโพสหาแล้วไม่มีใครตอบนะฮ่าๆ
DLP
วันพุธที่ 8 พฤศจิกายน พ.ศ. 2560
ดาบติดขา
ดาบติดขา
##.ใช้ได้Test แล้ว.##
WarZ.sln :
ค้นหา :
void CUberEquip::DrawSlot(ESlot slotId, const D3DXMATRIX& world, DrawType dt, bool skin, bool draw_firstperson, const r3dSkeleton* wpnSkeleton)
ใส่ // :
{
//if(slotId == SLOT_WeaponSide)
//return;
if(draw_firstperson)
{
if(slotId == SLOT_Armor || slotId == SLOT_LowerBody || slotId == SLOT_Head || slotId == SLOT_Helmet || slotId == SLOT_Backpack)
return;
}
ค้นหา :
if(slots_[SLOT_WeaponSide].wpn)
ทับ :
if(slots_[SLOT_WeaponSide].wpn)
{
if(slots_[SLOT_WeaponSide].wpn->getCategory() == storecat_HG) // Rolor:put handguns in side slot
{
skel->GetBoneWorldTM("Weapon_Side", &world, CharMat);
}
else if(slots_[SLOT_WeaponSide].wpn->getCategory() == storecat_MELEE) // Rolor:it is a melee weapon, put it on back but rotate it to look better (for most)
{
D3DXMATRIX mr1;
D3DXMatrixRotationYawPitchRoll(&mr1, 0, R3D_PI/2 + 40, 30);
skel->GetBoneWorldTM("Weapon_Side", &world, CharMat);
world = mr1 * world;
}
else // Rolor:it is not handgun or melee, put it on back
{
skel->GetBoneWorldTM("Weapon_Side", &world, CharMat);
}
DrawSlot(SLOT_WeaponSide, world, dt, false, first_person, NULL);
}
##.ใช้ได้Test แล้ว.##
WarZ.sln :
ค้นหา :
void CUberEquip::DrawSlot(ESlot slotId, const D3DXMATRIX& world, DrawType dt, bool skin, bool draw_firstperson, const r3dSkeleton* wpnSkeleton)
ใส่ // :
{
//if(slotId == SLOT_WeaponSide)
//return;
if(draw_firstperson)
{
if(slotId == SLOT_Armor || slotId == SLOT_LowerBody || slotId == SLOT_Head || slotId == SLOT_Helmet || slotId == SLOT_Backpack)
return;
}
ค้นหา :
if(slots_[SLOT_WeaponSide].wpn)
ทับ :
if(slots_[SLOT_WeaponSide].wpn)
{
if(slots_[SLOT_WeaponSide].wpn->getCategory() == storecat_HG) // Rolor:put handguns in side slot
{
skel->GetBoneWorldTM("Weapon_Side", &world, CharMat);
}
else if(slots_[SLOT_WeaponSide].wpn->getCategory() == storecat_MELEE) // Rolor:it is a melee weapon, put it on back but rotate it to look better (for most)
{
D3DXMATRIX mr1;
D3DXMatrixRotationYawPitchRoll(&mr1, 0, R3D_PI/2 + 40, 30);
skel->GetBoneWorldTM("Weapon_Side", &world, CharMat);
world = mr1 * world;
}
else // Rolor:it is not handgun or melee, put it on back
{
skel->GetBoneWorldTM("Weapon_Side", &world, CharMat);
}
DrawSlot(SLOT_WeaponSide, world, dt, false, first_person, NULL);
}
สมัครสมาชิก:
บทความ (Atom)