19/02/2019

Danh sách Warning và Error kèm theo cách sửa lỗi [Phần 1]

Danh sách Warning và Error kèm theo cách sửa lỗi (WARNING)

Xin những anh em thiện lành chú ý rằng danh sách sau đây chỉ bao gồm những lỗi có thể sửa một cách đơn giản. Những lỗi khác mà bạn gặp phải có thể bình luận ở phía dưới để được DEV SA-MP hổ trợ.

  • Loose Indentation

Lí do: Bạn có một dòng mã thụt vào dòng không hợp lệ.

Lỗi:
public OnPlayerLeaveCheckpoint(playerid)
{
    SendClientMessage(playerid,-1,"You have left a checkpoint.");
        print("Someone left a checkpoint");
    return 1;
}


Sửa:
public OnPlayerLeaveCheckpoint(playerid)
{
    SendClientMessage(playerid,-1,"You have left a checkpoint.");
    print("Someone left a checkpoint");
    return 1;
}

  • Unreachable code

Lí do: 

Lỗi: Bạn có dòng mã không thể truy cập, dòng lệnh đã được return trước đó.
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    if(vehicleid == 520) // Just a random ID, unsure if it really exists
    {
        SendClientMessage(playerid,-1,"You have entered vehicle ID 520.");
        return 1;
    }
    else return 0;
    return 1;

}

Sửa:
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    if(vehicleid == 520) // Just a random ID, unsure if it really exists
    {
        SendClientMessage(playerid,-1,"You have entered vehicle ID 520.");
        return 1
    }
    return 1;

}

  • Nested comment


Lí do: Có một comment bị chứa trong một comment khác.

Lỗi:
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    /* if(vehicleid == 520)
    {
        if(playerid == 0)

        {
            /* if(ispassenger)
            {
                print("Ohai!");
                return 1;
            }
        }
    } */

    return 1;
}

Sửa:
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    /* if(vehicleid == 520)
    {
        if(playerid == 0)

        {
            if(ispassenger)
            {
                print("Ohai!");
                return 1;
            }
        }
    } */

    return 1;
}

  • Number of arguments does not match definition

Lí do: Có quá nhiều/ít tham số cần có (không đúng trên tất cả trường hợp).

Lỗi:
CMD:centermap(playerid,params[])
{
    #pragma unused params
    SetPlayerPos(playerid,0.0,0.0,3.0,90.0); // We've put the angle here too 'by accident'
    SendClientMessage(playerid,-1,"You have been sent to the center of the map in Blue Berry.");
    return 1;
}

Sửa: Hãy nhớ cú pháp đúng cho các hàm khác nhau. Ở ví dụ này, SetPlayerPos chỉ có 4 tham số là Playerid, X, Y, Z.
CMD:centermap(playerid,params[])
{
    #pragma unused params
    SetPlayerPos(playerid,0.0,0.0,3.0);
    SetPlayerFacingAngle(playerid,90.0);
// Correct is to put the angle into this function.
    SendClientMessage(playerid,-1,"You have been sent to the center of the map in Blue Berry.");
    return 1;
}

Còn tiếp...

Lưu ý

» Không chửi tục, nói bậy, quảng cáo thông qua khung bình luận.
» Không spam liên kết, chia sẻ các liên kết không liên quan đến bài Blog.
» Không xuyên tạc, bôi nhọ tổ chức hay cá nhân nào.
» Mọi bình luận sai nội quy sẽ bị xóa mà không cần báo trước.


Emoticon
Parser
😊
😉
😀
😁
😎
😍
😜
😑
😇
💖
😯
😱
😭
👍
🍻