PDA

View Full Version : [KT] Xin hướng dẫn cách để cấm địa luôn mở khi đi phó bản quân doanh



djhtpro9x
25-02-22, 11:28 PM
Cái này mình có tìm thử nhưng vẫn chưa biết nó ở đâu. Ví dụ như đi Hậu Sơn Phục Ngưu khi hoàn thành ải nó sẽ có ải phụ là câu cá, Hải Lăng Vương Mộ thì có ải phụ là bàn cờ...
Mình tìm trong main.lua của các phó bản thì k biết nó ở chỗ nào, nên nhờ các bác chỉ giúp :D


tbNpc.tbPosKuoZhanQu = {
{"Bàn cờ tướng", 53696 / 32, 115104 / 32},
{"Đồng trung nhân", 52288 / 32, 109760 / 32},
{"Truy đuổi Lưu Nhất Bán", 54144 / 32, 124160 / 32},
}

__Jie__
26-02-22, 09:17 AM
tìm trong file main
Ví dụ

self.tbKuoZhanQuOut = { 0,
0,
0,
}
Sửa thành

self.tbKuoZhanQuOut = { 1,
1,
1,
}
sẽ mở tất cả các phó bản Ẩn

hoặc tìm theo
tbHLTreasureBox.tbProlibity = {-- tỉ lệ % ngau nhien se mo , tương ứng 3 option phía trên
50,
30,
20,
}

cái này là sau khi con boss chết hay mở cái rương gì đó , thì nó set 1 để active cái phó bản ẩn lên

Dùng tính năng search all để tìm các từ khóa liên quan , từ đó tìm ra chổ cần sửa

Xem code bên dưới là của 1 con boss, xác xuất nó đang là 50% sẽ xuất hiện phó bản ẩn.
Nếu muốn edit % thì cừ sửa số 50 là dc.
Nếu muốn 100% ra thì xóa cái if check % đi



-- 第二層左邊的 BOSSlocal tbNpc_1 = Npc:GetClass("caishiquboss");


tbNpc_1.ENTRYWAY_RATE = 50; --打死BOSS後出現秘徑的概率


function tbNpc_1:OnDeath(pNpc)
local nSubWorld, nNpcPosX, nNpcPosY = him.GetWorldPos();


local tbInstancing = Task.tbArmyCampInstancingManager:GetInstancing(nSu bWorld);
assert(tbInstancing);
tbInstancing.nCaiShiQuPass = 1;
local pPlayer = pNpc.GetPlayer();

local nEntryWayRate = MathRandom(100);
if (self.ENTRYWAY_RATE > nEntryWayRate) then
-- 開出秘徑

local pEntryway = KNpc.Add2(4114, 1, -1, nSubWorld, nNpcPosX, nNpcPosY);
local tbNpcData = pEntryway.GetTempTable("Task");
tbNpcData.nEntrancePlayerId = pPlayer.nId;
tbNpcData.nEntryMapId = nSubWorld;
KTeam.Msg2Team(pPlayer.nTeamId, pPlayer.szName.." phát hiện lối vào Phục Ngưu Sơn Trang!");
end;

KNpc.Add2(2793, 1, -1, nSubWorld, 1694, 3862);
local tbPlayList, nCount = KPlayer.GetMapPlayer(tbInstancing.nMapId)

-- 用於老玩家召回任務完成任務記錄
-- local tbMemberList = pPlayer.GetTeamMemberList();
for _, player in ipairs(tbPlayList) do
Task.OldPlayerTask:AddPlayerTaskValue(player.nId, 2082, 4);
end;

-- 增加隊長的領袖榮譽
local tbHonor = {[3] = 24, [4] = 36, [5] = 48, [6] = 60}; -- 3、4、5、6人隊長的領袖榮譽表
local tbTeamPlayer, _ = KTeam.GetTeamMemberList(pPlayer.nTeamId);
if tbHonor[nCount] and tbTeamPlayer then
PlayerHonor:AddPlayerHonorById_GS(tbTeamPlayer[1], PlayerHonor.HONOR_CLASS_LINGXIU, 0, tbHonor[nCount]);
end

-- 四次任務
for _, player in ipairs(tbPlayList) do
local tbPlayerTasks = Task:GetPlayerTask(player).tbTasks;
local tbTask1 = tbPlayerTasks[381];
local tbTask2 = tbPlayerTasks[429]
if ((tbTask1 and tbTask1.nReferId == 565) or (tbTask2 and tbTask2.nReferId == 622)) then
player.SetTask(1022, 200, player.GetTask(1022, 200) + 1);
end;

-- 額外獎勵回調
local nFreeCount, tbFunExecute = SpecialEvent.ExtendAward:DoCheck("ArmyCampBoss", player);
SpecialEvent.ExtendAward:DoExecute(tbFunExecute);
end;
end

djhtpro9x
28-02-22, 12:00 AM
Vẫn ko hoạt động bác ạ.............

djhtpro9x
28-02-22, 03:04 PM
Tiện thể bác cho tôi hỏi cái bản KTCT Client nó ko chạy đc ở phân giải cao hơn 800x600, 720p hoặc 800p là auto crash luôn, cái này thì phải sửa thế nào vậy?