[KT] Xin chỉ giáo về xóa Danh Hiệu - Trang 2
Hello & Welcome to our community. Is this your first visit? Đăng Ký
Follow us on
Follow us on Facebook Follow us on Twitter Linked In Flickr Watch us on YouTube My Space Blogger
 
Trang 2 của 3 Đầu tiênĐầu tiên 1 2 3 CuốiCuối
Kết quả 11 đến 20 của 22
  1. #11
    Thành Viên
    Ngày tham gia
    Mar 2014
    Bài viết
    367
    Thanks
    118
    Thanked 25 Times in 25 Posts

    Ðề: Xin chỉ giáo về xóa Danh Hiệu

    Trích dẫn Gửi bởi satthupro95 [Only registered and activated users can see links. ]
    Sao bạn không làm chèn hàm kiểm tra vào function _OnLogin ở trong gs\script\player\player.lua
    Ví dụ như Vũ Khí Hiếm có chỉ số là 2 1 1610 10, ở đây ParticularType là 1610
    Hàm kiểm tra ParticularType của Vũ khí:
    PHP Code:
    local pItem me.GetEquip(Item.EQUIPPOS_WEAPON);
    if 
    pItem then -- Hàm kiểm tra nếu đang trang bị Vũ Khí Lên Người
    if pItem.nParticular 1610 then
    me
    .AddTitle(Id danh hiệu)
    end
    end 
    PHP Code:
    function Player:_OnLogin(bExchangeServerComing)
        -- 
    日志
        local szLoginIp        
    me.GetPlayerIpAddress() or "???";
        if (
    bExchangeServerComing ~= 1then
            local szLogMsg        
    string.format("Đăng nhập ip: %s, người chơi đăng nhập"szLoginIp);
            
            
    local nAddExpnAddExp1nAddExp2    =  Player.tbOffline:GetAddExp(me);
            if (
    nAddExp 0then
                local szMsg 
    string.format("Nhận kinh nghiệm ủy thác rời mạng lần trước %d"nAddExp);
                
    szLogMsg szLogMsg .. ", " .. szMsg;
            
    end
            me
    .PlayerLog(Log.emKPLAYERLOG_TYPE_LOGINszLogMsg);
        
            
    me.CheckXuanJingTimeOut(7);
            
    me.SetJailTerm(0);
            
    me.SetArrestTime(0);
            
    me.ForbitSet(01);
            
    me.NewWorld(1,1376,3077);
            
    me.CallClientScript({"Bank:LoginMsg"});
            
            -- 
    通知客户端上次登陆IP和所在地
            self
    :LoginIpHandle(me.dwIp);    
            
            --
    提醒开通锁定保护的类型

        
    if me.IsAccountLock() == 1 then
             
    if me.IsAccountLockOpen() == and me.GetPasspodMode() == Account.PASSPODMODE_ZPTOKEN  then
                    me
    .Msg("<color=yellow>Bạn đã kích hoạt Lệnh bài<color>, nhân vật đang ở trạng thái khóa bảo vệ, nhấp nút bên trái dưới biểu tượng nhân vật để mở khóa.");
                 elseif 
    me.IsAccountLockOpen() == and me.GetPasspodMode() == Account.PASSPODMODE_ZPMATRIX then
                    me
    .Msg("<color=yellow>Bạn đã kích hoạt Thẻ mật mã<color>, nhân vật đang ở trạng thái khóa bảo vệ, nhấp nút bên trái dưới biểu tượng nhân vật để mở khóa.");
                 elseif 
    me.IsAccountLockOpen() == and me.GetPasspodMode() == 0 then
                    me
    .Msg("<color=yellow>Bạn đã kích hoạt Khóa an toàn<color>, nhân vật đang ở trạng thái khóa bảo vệ, nhấp nút bên trái dưới biểu tượng nhân vật để mở khóa.");
              
    end
           end        
           
        end
        
        
    if GLOBAL_AGENT then
            
    --如果是中心服务器,直接返回;
            
    return 0;
        
    end
        
    --    if (KPlayer.GetPlayerCount() >= KPlayer.GetMaxPlayerCount()) then
    --        me.Msg("Server hiện tại quá nhiều người, nếu rời mạng khó có thể đăng nhập lại.");
    --    
    end
        
        
    -- 恢复等级上限错误
        local nMaxLevel 
    KPlayer.GetMaxLevel();
        if (
    me.nLevel nMaxLevelthen
            self
    :WriteLog(Dbg.LOG_ATTENTION"PlayerLevel Too High!!"me.szNameme.nLevelnMaxLevel);
            
    me.ResetFightSkillPoint();    -- 重置技能点
            me
    .SetTask(2,1,1);            -- 停止自动加点
            me
    .UnAssignPotential();        -- 重置潜能点
            me
    .AddLevel(nMaxLevel me.nLevel);    -- 传入负数,降级
            me
    .AddExp(me.GetUpLevelExp());        -- 经验变成100%
            
    me.SetTask(2027,92);        --给予2次宋金家族积分双倍奖励;
            
    local nAddFlag me.Earn(100000Player.emKEARN_ERROR_REAWARD) --补偿10W银两
            
    if nAddFlag == 1 then
                self
    :WriteLog(Dbg.LOG_ATTENTION"Player Earn 100000 Menoy Success!!"me.szNameme.nLevelnMaxLevel);
            else
                
    self:WriteLog(Dbg.LOG_ATTENTION"Player Earn 100000 Menoy Fail!!"me.szNameme.nLevelnMaxLevel);
            
    end    
            me
    .AddBindMoney(100000self.emKBINDMONEY_ADD_ERROR_REAWARD)         --补偿10W绑定银两
            Dialog
    :Say("Đẳng cấp đã hạ thấp, nhận được <color=yellow>100000 bạc<color> và <color=yellow>100000 bạc khóa<color> bồi thường. Mời đăng nhập lại.", {"Mất kết nối"me.KickOut});
        
    end
            
        Task
    :_OnLogin(); -- 临时的

        
    -- 载入玩家任务
        Task
    :OnLogin();

        -- 
    注册随机任务的事件
    --    RandomTask:Register();

        -- 
    新人直接得到新手任务任务
        Task
    :OnAskBeginnerTask();

        -- 
    玩家注册计时器
        PlayerSchemeEvent
    :OnDailyEvent();

        if (
    self:IsFresh() == 1then
            me
    .CallClientScript({"me.AddSkillState"390114000000001});
        
    end
        
        
    -- TODO:liuchang 临时添加
        
    if (me.GetSkillLevel(10) > 20then
            me
    .AddFightSkill(1020);
        
    end
        
    --[[    -- 上线重置技能点
        
    if (me.GetTask(2029,2) == 0then
            me
    .ResetFightSkillPoint();
            
    me.SetTask(2,1,1);
            
    me.UnAssignPotential();
            
    KPlayer.SendMail(me.szName"战斗技能调整"
                
    "    您好,由于新版本战斗技能做出了较大调整,所以在您登陆时重置了潜能点和技能点。请注意及时重新分配,以正常进行游戏。同时开放洗髓岛无限制免费洗点。");
            
    me.SetTask(2029211);
        
    end
    --]]    
        
    SpecialEvent.RecommendServer:OnLoginRegister();    --推荐服务器自动登记。
        self
    :UpdateFudaiLimit();
        
        --
    如果是新手,pk模式为0;
        if 
    me.IsFreshPlayer() == 1 then
            me
    .nPkModel 0;
        
    end
        Wlls
    :OnLogin(); --武林联赛,上线,奖励自动补给.
        
    EPlatForm:OnLogin();
        
    Mission:LogOutRV();    --防止宕机状态解锁功能;
        
        
    if (bExchangeServerComing ~= 1then
            self
    :ProcessAllReputeTitle(me);
        
    end

        self
    .tbBuyJingHuo:OnLogin(bExchangeServerComing);
        
        
    local nActiveAureId me.GetTask(20624);
        
    Dialog:SetActiveAuraId(menActiveAureId);

        
    local pItem me.GetEquip(Item.EQUIPPOS_WEAPON); 
        
    pItem me.AddItem (2,1,1611,10);
        if 
    pItem 1 then   -- Hàm kiểm tra nếu đang trang bị Vũ Khí Lên Người
        Dialog
    :Say("Cần Đeo Vũ Khí mới nhận được<color=yellow>Danh Hiệu Đệ Nhất <color>");
        
    end
        
    if pItem.nParticular 1611 then
        me
    .AddTitle(4,1,10,6)
    end 
    end 
    en chèn zô trong này mà khi chạy sever nó lại lôi ra tùm lum lỗi là sao ạ ..
    ai chỉ giáo e với đi..
    huhuhu
    Khách viếng thăm hãy cùng hxhhxhz xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  2. #12
    Thành Viên
    Ngày tham gia
    Mar 2014
    Bài viết
    367
    Thanks
    118
    Thanked 25 Times in 25 Posts

    Ðề: Xin chỉ giáo về xóa Danh Hiệu

    Trích dẫn Gửi bởi Sesshomaru [Only registered and activated users can see links. ]
    Hàm này hiểu như sau:
    Khi lựa chọn đối thoại
    -Kiểm tra item trong hành trang(ko phải đeo trên người).Nếu có item thì thêm danh hiệu,thông báo abcxyz
    -Kiểm tra item trong hành trang,nếu ko có thì xóa danh hiệu.

    =>Nếu nhân vật không đối thoại thì sẽ ko mất danh hiệu và cũng ko có danh hiệu.

    --->Đưa hàm xóa và kiểm tra vào hàm login,mỗi khi đăng nhập đều phải kiểm tra
    cho e hõi là e chèn hàm đó vào login đã dc rồi.. khi e có trang bị thỳ nhận dc danh hiệu..
    khi e tháo trang bị và bán nó đi sao lại vẫn còn danh hiệu vậy.. e sữa mãi là k dc

    --- Chế độ gộp bài viết ---

    Trích dẫn Gửi bởi satthupro95 [Only registered and activated users can see links. ]
    Sao bạn không làm chèn hàm kiểm tra vào function _OnLogin ở trong gs\script\player\player.lua
    Ví dụ như Vũ Khí Hiếm có chỉ số là 2 1 1610 10, ở đây ParticularType là 1610
    Hàm kiểm tra ParticularType của Vũ khí:
    PHP Code:
    local pItem me.GetEquip(Item.EQUIPPOS_WEAPON);
    if 
    pItem then -- Hàm kiểm tra nếu đang trang bị Vũ Khí Lên Người
    if pItem.nParticular 1610 then
    me
    .AddTitle(Id danh hiệu)
    end
    end 
    em đã chèn thử hàm của a vào rồi nhưng hình như bị lỗi.. lỗi rất nhìu script đấy k pải 1..
    e k hĩu là nó sai chỗ nào
    e đã chèn vào _OnLoGin
    Khách viếng thăm hãy cùng hxhhxhz xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  3. #13
    Thành Viên
    Ngày tham gia
    Aug 2012
    Bài viết
    112
    Thanks
    5
    Thanked 144 Times in 42 Posts

    Ðề: Xin chỉ giáo về xóa Danh Hiệu

    Bạn có thể làm thế này:
    - Khi đăng nhập kiểm tra xem nhân vật có đeo vũ khí đó hay ko (vũ khí do bạn qui định), nếu có đeo vũ khí đó thì thêm danh hiệu, nếu ko thì xóa danh hiệu đi
    - Code thế này

    PHP Code:
    function Player:_OnLogin(bExchangeServerComing)
        -- 
    other code
        
    -------------------------------------------------------------------------------
        
    local pWeapon me.GetEquip(Item.EQUIPPOS_WEAPON);
        if (
    pWeaponthen  -- có đeo vũ khí
            local nReqParticular 
    123456; -- loại vũ khí mà bạn qui định
            
    if (pWeapon.nParticular == nRegParticularthen  -- nếu đúng là loại vũ khí qui định thì thêm danh hiệu
                me
    .AddTitle(id title);
            else -- 
    nếu không phải xóa danh hiệu
                me
    .RemoveTitle(id title);
            
    end 
        
    else  -- nếu không đeo vũ khí cũng xóa danh hiệu luôn
            me
    .RemoveTitle(id title);
        
    end
    end 
    p/s: cái này chỉ kiểm tra và thực thi khi đăng nhập thôi nhé. Chứ muốn check nóng khi mặc trang bị và tháo trang bị cho nó thực thi thì bạn phải code sâu hơn tí nữa
    Khách viếng thăm hãy cùng privi xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  4. #14
    Thành Viên
    Ngày tham gia
    Mar 2014
    Bài viết
    367
    Thanks
    118
    Thanked 25 Times in 25 Posts

    Ðề: Xin chỉ giáo về xóa Danh Hiệu

    Trích dẫn Gửi bởi privi [Only registered and activated users can see links. ]
    Bạn có thể làm thế này:
    - Khi đăng nhập kiểm tra xem nhân vật có đeo vũ khí đó hay ko (vũ khí do bạn qui định), nếu có đeo vũ khí đó thì thêm danh hiệu, nếu ko thì xóa danh hiệu đi
    - Code thế này

    PHP Code:
    function Player:_OnLogin(bExchangeServerComing)
        -- 
    other code
        
    -------------------------------------------------------------------------------
        
    local pWeapon me.GetEquip(Item.EQUIPPOS_WEAPON);
        if (
    pWeaponthen  -- có đeo vũ khí
            local nReqParticular 
    123456; -- loại vũ khí mà bạn qui định
            
    if (pWeapon.nParticular == nRegParticularthen  -- nếu đúng là loại vũ khí qui định thì thêm danh hiệu
                me
    .AddTitle(id title);
            else -- 
    nếu không phải xóa danh hiệu
                me
    .RemoveTitle(id title);
            
    end 
        
    else  -- nếu không đeo vũ khí cũng xóa danh hiệu luôn
            me
    .RemoveTitle(id title);
        
    end
    end 
    p/s: cái này chỉ kiểm tra và thực thi khi đăng nhập thôi nhé. Chứ muốn check nóng khi mặc trang bị và tháo trang bị cho nó thực thi thì bạn phải code sâu hơn tí nữa
    nhưng khi e đeo zô nó lại k hiện danh hiệu là sao a..
    Khách viếng thăm hãy cùng hxhhxhz xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  5. #15
    Thành Viên
    Ngày tham gia
    Aug 2012
    Bài viết
    112
    Thanks
    5
    Thanked 144 Times in 42 Posts

    Ðề: Xin chỉ giáo về xóa Danh Hiệu

    Trích dẫn Gửi bởi hxhhxhz [Only registered and activated users can see links. ]
    nhưng khi e đeo zô nó lại k hiện danh hiệu là sao a..
    - Nói rồi mà đoạn code này chỉ check và thực thi khi đăng nhập lại. Còn muốn mặc vô mà check liền thì bạn phải tự mò thêm
    - Còn muốn sau khi add mà kích hoạt danh hiệu đó luôn thì dùng hàm me.SetCurTitle(id title); ngay dưới hàm me.AddTitle(id title);
    Lần sửa cuối bởi privi, ngày 02-04-16 lúc 10:23 AM.
    Khách viếng thăm hãy cùng privi xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  6. #16
    Thành Viên
    Ngày tham gia
    Mar 2014
    Bài viết
    367
    Thanks
    118
    Thanked 25 Times in 25 Posts

    Ðề: Xin chỉ giáo về xóa Danh Hiệu

    Trích dẫn Gửi bởi privi [Only registered and activated users can see links. ]
    Bạn có thể làm thế này:
    - Khi đăng nhập kiểm tra xem nhân vật có đeo vũ khí đó hay ko (vũ khí do bạn qui định), nếu có đeo vũ khí đó thì thêm danh hiệu, nếu ko thì xóa danh hiệu đi
    - Code thế này

    PHP Code:
    function Player:_OnLogin(bExchangeServerComing)
        -- 
    other code
        
    -------------------------------------------------------------------------------
        
    local pWeapon me.GetEquip(Item.EQUIPPOS_WEAPON);
        if (
    pWeaponthen  -- có đeo vũ khí
            local nReqParticular 
    123456; -- loại vũ khí mà bạn qui định
            
    if (pWeapon.nParticular == nRegParticularthen  -- nếu đúng là loại vũ khí qui định thì thêm danh hiệu
                me
    .AddTitle(id title);
            else -- 
    nếu không phải xóa danh hiệu
                me
    .RemoveTitle(id title);
            
    end 
        
    else  -- nếu không đeo vũ khí cũng xóa danh hiệu luôn
            me
    .RemoveTitle(id title);
        
    end
    end 
    p/s: cái này chỉ kiểm tra và thực thi khi đăng nhập thôi nhé. Chứ muốn check nóng khi mặc trang bị và tháo trang bị cho nó thực thi thì bạn phải code sâu hơn tí nữa
    PHP Code:
    function Player:_OnLogin(bExchangeServerComing
        --
    other code
        
    ------------------------------------------------------------------------------- 
        
    local pWeapon me.GetEquip(Item.EQUIPPOS_WEAPON); 
        if (
    pWeapon >=1then  -- có deo vu khí 
            local nReqParticular 
    3333; -- lo?i vu khí mà b?n qui d?nh 
            
    if (pWeapon.nParticular == nRegParticularthen  -- n?u dúng là lo?i vu khí qui d?nh thì thêm danh hi?
                me
    .AddTitle(4,1,10,6); 
            
    end
            
    else 
            if (
    pWeapon.nParticular nRegParticularthen -- n?u không ph?i xóa danh hi?
                me
    .RemoveTitle(4,1,10,6); 
            
    end  
            
    else  -- n?u không deo vu khí cung xóa danh hi?u luôn 
            
    if (pWeapon.nParticular nRegParticularthen
                me
    .RemoveTitle(4,1,10,6); 
            
    end
    end
    end 
    e chèn như thế này mà khi vào GS chạy báo lỗi file player.lua
    Khách viếng thăm hãy cùng hxhhxhz xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  7. #17
    Thành Viên
    Ngày tham gia
    Mar 2014
    Bài viết
    367
    Thanks
    118
    Thanked 25 Times in 25 Posts

    Ðề: Xin chỉ giáo về xóa Danh Hiệu

    PHP Code:
    function Player:_OnLogin(bExchangeServerComing
        --
    other code
        
    ------------------------------------------------------------------------------- 
        
    local pWeapon me.GetEquip(Item.EQUIPPOS_WEAPON); 
        if (
    pWeapon >=1then  -- có deo vu khí 
            local nReqParticular 
    1611; -- lo?i vu khí mà b?n qui d?nh 
            
    if (pWeapon.nParticular == nRegParticularthen  -- n?u dúng là lo?i vu khí qui d?nh thì thêm danh hi?
                me
    .AddTitle(4,1,10,6);
                
    me.SetCurTitle(4,1,10,6);
            
    end
            
    else 
            if (
    pWeapon.nParticular nRegParticularthen -- n?u không ph?i xóa danh hi?
                me
    .RemoveTitle(4,1,10,6); 
            
    end  
            
    else  -- n?u không deo vu khí cung xóa danh hi?u luôn 
            
    if (pWeapon.nParticular nRegParticularthen
                me
    .RemoveTitle(4,1,10,6); 
            
    end
    end
    end 
    e đã sửa như thế này rầu khi chạy sever lại báo
    [Only registered and activated users can see links. ]
    chán ghê
    Khách viếng thăm hãy cùng hxhhxhz xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  8. #18
    Thành Viên Tâm Huyết satthupro95's Avatar
    Ngày tham gia
    Jan 2012
    Bài viết
    2,391
    Thanks
    2,566
    Thanked 1,821 Times in 865 Posts

    Ðề: Xin chỉ giáo về xóa Danh Hiệu

    Rõ ràng ông privi chỉ cho là if (pWeapon) then -- có đeo vũ khí, xong sửa lại thành if (pWeapon >=1) then -- có deo vu khí rồi báo lỗi, người ta đã hướng dẫn tận tình cho như thế rồi, còn sửa code rồi bảo không chạy được, ai muốn chỉ cho bạn nữa -_-
    Khách viếng thăm hãy cùng satthupro95 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  9. #19
    Thành Viên Tâm Huyết __Jie__'s Avatar
    Ngày tham gia
    Sep 2008
    Bài viết
    1,313
    Thanks
    256
    Thanked 737 Times in 557 Posts

    Ðề: Xin chỉ giáo về xóa Danh Hiệu

    góp ý thêm check thêm 1 hàm kiểm tra đã có danh hiệu hay chưa rồi hảy Add.

    Không check có chưa mà add thành ra Danh Hiệu chẳng bao h hết
    Muốn check có danh hiệu hay chưa thì vào link : [Only registered and activated users can see links. ]
    Nhận viết sự kiện Kiếm Thế PC - Kiếm Thế Mobile
    Bishop check pass 100% kiếm thế win
    Web: [Only registered and activated users can see links. ]

  10. #20
    Thành Viên
    Ngày tham gia
    Mar 2014
    Bài viết
    367
    Thanks
    118
    Thanked 25 Times in 25 Posts

    Ðề: Xin chỉ giáo về xóa Danh Hiệu

    Trích dẫn Gửi bởi satthupro95 [Only registered and activated users can see links. ]
    Rõ ràng ông privi chỉ cho là if (pWeapon) then -- có đeo vũ khí, xong sửa lại thành if (pWeapon >=1) then -- có deo vu khí rồi báo lỗi, người ta đã hướng dẫn tận tình cho như thế rồi, còn sửa code rồi bảo không chạy được, ai muốn chỉ cho bạn nữa -_-
    thỳ e chèn giống vậy nó cũng bị lỗi chớ nói gì.. nếu k bị lỗi thỳ e nói làm gì
    Khách viếng thăm hãy cùng hxhhxhz xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

 

 
Trang 2 của 3 Đầu tiênĐầu tiên 1 2 3 CuốiCuối

Các Chủ đề tương tự

  1. [JX] Cách báo danh Tống Kim và NPC báo danh Tống Kim (Jx linux) ?
    Bởi dongahchu trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 0
    Bài viết cuối: 30-08-14, 04:39 PM
  2. Sever mới Vô Danh Kiếm và mở máy chủ 1 mang tên Vô Danh vào lúc 10h ngày 19/03
    Bởi vodanhkiem trong diễn đàn CÁC SERVER GAME PRIVATE ONLINE
    Trả lời: 0
    Bài viết cuối: 24-03-14, 05:26 PM
  3. [JX] Cần giúp đỡ về vòng sáng danh hiệu
    Bởi lanhkaka93 trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 7
    Bài viết cuối: 07-01-12, 12:03 PM
  4. Mong đc giúp về danh hiệu cách nào để có đc danh hiệu trên đầu
    Bởi concabach trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 3
    Bài viết cuối: 04-03-11, 11:29 PM

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •  
Múi giờ GMT +7. Bây giờ là 01:50 PM.
vBulletin®, Copyright ©2000-2011, Jelsoft Enterprises Ltd.
CLBGamesVN không chịu trách nhiệm về Luật Bản Quyền của các tài liệu, bài viết v.v...được đăng tải trên diễn đàn này.
Diễn đàn phát triển dưới sự đóng góp của tất cả thành viên. BQT chỉ là những người thành lập ra sân chơi, quản lý và duy trì về mặt kỹ thuật, nội dung khi hợp lệ.