Jump to content

[Tutorial]Pickup-uri pentru case ( Detinute/Nedetinute) MySqL


Neooooo

Recommended Posts

Da , după părerea mea nu ați înțeles mare lucru din titlu' , deci stați să va explic ..
Am văzut pe majoritate serverelor că la intrări in case sunt doar textele ( Owner , Rent , Pret , ș.a.m.d... ) e.x. : Click Aici.

Eu cred că ar fi mult mai frumos dacă la fiecare casă Nedeținută să fie un Pickup cu o casă ( Verde , toată lumea cred că știe acest pickup) iar la fiecare casa Deținută sa fie un pickup cu o casă ( Albastră ) fara a creea un pickup pentru fiecare casa in parte ... CreatePickup(...) x100...

Deci , să incepem.

 

// Eu folosesc MySQL R33
// Sub define-uri scriem așa :

new case = 0;
new ownedhouses[MAX_HOUSES];
new unownedhouses[MAX_HOUSES];


// La functia care adaugă casele din baza de date:
/*La*/ LoadHouses() // Adaugăm așa:
{
    new result[100],index = 0;
    mysql_query(SQL,"SELECT * FROM `houses` ORDER BY `houses`.`ID` ASC");
    mysql_store_result();
    while(mysql_retrieve_row()) // Depinde 
    {
        case++;
        //Codurile tale..
    }
    for(new p;p<= case;p++)
    {
        if(HouseInfo[p][hOwned] == 0)
        {
            unownedhouses[p] = CreatePickup(1273,23,HouseInfo[p][hEntraceX],HouseInfo[p][hEntraceY],HouseInfo[p][hEntraceZ])  // Intrarea in casă
        }
        else
        {
            ownedhouses[p] = CreatePickup(1272,23,HouseInfo[p][hEntraceX],HouseInfo[p][hEntraceY],HouseInfo[p][hEntraceZ])  // Intrarea in casă
        }
    }
    return 1;
}

//La comanda cu care vindem casa la stat 
(In cazul meu : )
CMD:sellhousetostate(playerid,params[])
{
    new house = PlayerInfo[playerid][pHouseKey];
    DestroyPickup(house);
    CreatePickup(1273,23,HouseInfo[house][hEntranceX],HouseInfo[house][hEntranceY],HouseInfo[house][hEntranceZ]) // Nedetinuta
    
    //Codurile tale 
    
    
    return 1;
}

//La comanda cu care vindem casa la stat  ( Ca Administrator ) 
(In cazul meu : )
CMD:asellhousetostate(playerid,params[])
{

    new house;
    if(sscanf(params,"d",house)) return SendClientMessage(playerid,0xFFFFFFFF,"/asellhousetostate <id-ul casei>");
    if(house > case) /* (Variabila care am creat-o pentru LoadHouses)*/ return SendClientMessage(playerid,0xFF00AA,"Aceasta casa nu exista");
    // alte coduri
    
    DestroyPickup(house);
    CreatePickup(1273,23,HouseInfo[house][hEntranceX],HouseInfo[house][hEntranceY],HouseInfo[house][hEntranceZ]) // Nedetinuta
    return 1;
}
//La comanda cu care cumparam o casa de la stat
(In cazul meu : )
CMD:buyhouse(playerid,params[])
{
    for(new h;h <= case;h++)
    {
        if(IsPlayerInRangeOfPoint(playerid,3.0,HouseInfo[h][hEntranceX],HouseInfo[h][hEntranceY],HouseInfo[h][hEntranceZ]))
        {
            // Codurile tale...
            DestroyPickup(h);
            CreatePickup(1273,23,HouseInfo[h][hEntranceX],HouseInfo[h][hEntranceY],HouseInfo[h][hEntranceZ]) // Detinuta
        }
    }
    return 1;
}

Sper că ați înțeles .. ( Sunt foarte răcit si nu prea am putut explica .. )

P.S. Dacă nu ati inteles ceva lăsați un reply și vă voi ajuta



 


 
 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.