(pomoc) pickup

Započeo [BC]spiele, Januar 30, 2011, 21:49:40 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

dakle ja sam napravio bizz po ovome tutorialu, sve radio osim 1 sitnice dakle ja kda stanem na pickup od biznisa ne pojavi mi se ono ko je vlasnik

po ovome sam radio = http://forum.sa-mp.com/showthread.php?t=149416

pomoc.

ako bas zelite code da vidite evo vam.
#include <a_samp>
#define MAX_BUSINESSES 100 //Increase if you need more but it will make your script larger.
#define PayoutTimer 60 //Number of seconds before the player gets his next pay.
enum BiznisInfo
{
    Float:BiznisX, //Business X Pos
    Float:BiznisY,  //Business Y Pos
    Float:BiznisZ,  //Business Z Pos
    BiznisCijena,  //Business buy cost
    BiznisProdaja,  // Business sell cost
    BiznisZarada,  //Business earn
    BiznisVlasnik, // ID of the player that owns the business
    BiznisIme[60], // The name of the business
    Disabled //If the business is disabled or not
};
//Add these at the top of your script.
new BusinessPickup[MAX_BUSINESSES]; // This is for all the pickups for the businesses.
new BusinessCount = -1; // This is so we can store all the business info like this BusinessInfo[BusinessCount][]
new BusinessInfo[MAX_BUSINESSES][BiznisInfo]; // All the enum info is saved into one variable.

CreateBusiness(cuisine[])//, Float:XPos, Float:YPos, Float:ZPos, Price, Sell, Earn
{
    if(!strlen(cuisine)) return 0; //If there is no name then it will not create the business
    BusinessCount ++; //Adding 1 onto the businesscount so the first one will be  BusinessInfo[0][....]
    BusinessInfo[BusinessCount][BiznisX] = 2267.62792969; //Sets the Xpos into the variable for long term saving.
    BusinessInfo[BusinessCount][BiznisY] = -1670.58251953; //Sets the Ypos into the variable for long term saving.
    BusinessInfo[BusinessCount][BiznisZ] = 15.77589893; //Sets the Zpos into the variable for long term saving.
    BusinessInfo[BusinessCount][BiznisCijena] = 100; //Sets the price into the variable for long term saving.
    BusinessInfo[BusinessCount][BiznisProdaja] = 100; //Sets the Sell cost into the variable for long term saving.
    BusinessInfo[BusinessCount][BiznisZarada] = 100; // //Sets the earning into the variable for long term saving.
    BusinessInfo[BusinessCount][BiznisVlasnik] = -1; //Sets the business owner into the variable for long term saving.
    BusinessPickup[BusinessCount] = AddStaticPickup(1272, 19, 2267.62792969,-1670.58251953,15.77589893, -1); //Adds the pickup
    format(BusinessInfo[BusinessCount][BiznisIme], 60, "%s", cuisine); //Sets the business name into the variable for long term saving.
    SetTimer("OnPlayerPickUpPickup", 1, true);
    return BusinessCount; //Will return the business ID
}


public OnFilterScriptInit() //Change to OnFilterScriptInit if it's a filterscript =].
{
    SetTimer("Payouttimer", 10000, true); //Sets the timer =].
    //CreateBusiness("TesBiznis", 100.0, 100.0, 10.0, 13337, 10000, 100);
    CreateBusiness("cuisine");
    return 1;
}

stock IsPlayerCloseEnoughToBis(playerid)
{
    for(new C; C<BusinessCount+1; C++)//Loops through all businesses
    {
        if(IsPlayerInRangeOfPoint(playerid, 3, BusinessInfo[C][BiznisX],  BusinessInfo[C][BiznisY], BusinessInfo[C][BiznisZ])) return C; // Checks if a business is close enough
    }
    return -1;
}

forward Payouttimer(); //You must forward a timer
public Payouttimer()
{
    for(new i; i<GetMaxPlayers(); i++) // Loops through every player
    {
        if(GetPVarInt(i, "Businessearnings") != 0) //Does the player earn any $$
        {
            new Str[100]; // Creating a string
            format(Str, sizeof(Str), "You have earned %d from all your properties!", GetPVarInt(i, "Businessearnings")); //Formats the string
            SendClientMessage(i, 0x00FF00AA, Str); //Sends the string to the player
            GivePlayerMoney(i, GetPVarInt(i, "Businessearnings")); //Gives the player the $$
}
    }
    return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
    if(!strcmp(cmdtext, "/buy", true))
{
    if(IsPlayerCloseEnoughToBis(playerid) == -1) return SendClientMessage(playerid, 0xAA3333AA, "Niste dovoljno blizu biznisa!!!"); //Returns this if the player isn't within 3 X, Y or Z of the business
    new buss = IsPlayerCloseEnoughToBis(playerid); //Makes a shorter define
    if(BusinessInfo[buss][Disabled] == 1) return SendClientMessage(playerid, 0xAA3333AA, "biznis je onesposobljen!!"); //This is for a function down at the bottom of this tutorial
    if(GetPlayerMoney(playerid) < BusinessInfo[buss][BiznisCijena]) return SendClientMessage(playerid, 0xAA3333AA, "Nemate dovoljno novca za ovaj biznis."); //Will return this if the player is a poor nub =D.
    if(BusinessInfo[buss][BiznisVlasnik] != -1) return SendClientMessage(playerid, 0xAA3333AA, "Netko vec posjeduje ovaj biznis!"); //Will return it if somebody online owns the business.
    BusinessInfo[buss][BiznisVlasnik] = playerid; //Sets the business owner
    SetPVarInt(playerid, "Businessearnings" , GetPVarInt(playerid, "Businessearnings") + BusinessInfo[buss][BiznisZarada]); // Makes the players earn more
    new str[100]; //Creates a string
    format(str, sizeof(str), "You have brought the business %s for $%d. You will now earn $%d",  BusinessInfo[buss][BiznisIme], BusinessInfo[buss][BiznisCijena], BusinessInfo[buss][BiznisZarada]); //Formats a string
    SendClientMessage(playerid, 0x00FF00AA, str); //Sends the string
    GivePlayerMoney(playerid, -BusinessInfo[buss][BiznisCijena]); //Takes the $$ of for the business
    return 1;
}
if(!strcmp(cmdtext, "/sell", true))
{
    if(IsPlayerCloseEnoughToBis(playerid) == -1) return SendClientMessage(playerid, 0xAA3333AA, "Niste dovoljno blizu biznisa!!!"); //Checks if the player is close enough to any business
    new buss = IsPlayerCloseEnoughToBis(playerid); //Shortens the function
    if(BusinessInfo[buss][BiznisVlasnik] != playerid) return SendClientMessage(playerid, 0xAA3333AA, "Niste vlasnik ovoga biznisa!"); //Checks if the player actually owns this business
    BusinessInfo[buss][BiznisVlasnik] = -1; //Deletes the owner.
    SetPVarInt(playerid, "Businessearnings", GetPVarInt(playerid, "Businessearnings") - BusinessInfo[buss][BiznisZarada]); //Sets the players business earning down.
    new str[100];//Creates string
    format(str, sizeof(str), "Prodali ste biznis %s za $%d",  BusinessInfo[buss][BiznisIme], BusinessInfo[buss][BiznisCijena]); //Formats a string
    SendClientMessage(playerid, 0x00FF00AA, str); //Sends the string.
    GivePlayerMoney(playerid, BusinessInfo[buss][BiznisProdaja]); //Gives the player the $$ for selling the business =].
    return 1;
}
return 0;
}

public OnPlayerPickUpPickup(playerid,pickupid) //If you have one of these add the stuff in this to your one =]
{
    for(new C; C<BusinessCount+1; C++)//Loops through all businesses
    {
        if(pickupid == BusinessPickup[C]) //Checks if the pickup is for a business
        {
            new str[150];//Creates a string.
            if(BusinessInfo[C][BiznisVlasnik] == -1) format(str, sizeof(str), "%s ~n~~r~Cost price: $%d ~b~Sale price: $%d ~n~ ~g~Earn ammount: $%d", BusinessInfo[C][BiznisIme], BusinessInfo[C][BiznisCijena], BusinessInfo[C][BiznisProdaja], BusinessInfo[C][BiznisZarada]); //Makes the string for a business with no owner.
            if(BusinessInfo[C][BiznisVlasnik] != -1)
            {
                new Pname[24]; //Creates player name variable
                GetPlayerName(BusinessInfo[C][BiznisVlasnik], Pname, 24); //Gets player name
                format(str, sizeof(str), "%s ~n~~r~Cost price: $%d ~b~Sale price: $%d ~n~ ~g~Earn ammount: $%d~n~~w~Owner: %s(%d)", BusinessInfo[C][BiznisIme], BusinessInfo[C][BiznisCijena], BusinessInfo[C][BiznisProdaja], BusinessInfo[C][BiznisZarada], Pname, BusinessInfo[C][BiznisVlasnik]);
                GameTextForPlayer(playerid, str, 3000, 3);
            }
        }
    }
    return 1;
}

public OnPlayerDisconnect(playerid) //Copy the stuff below into your one if you have one =D.
{
    for(new C; C<BusinessCount+1; C++)//Loops through all businesses
    {
        if(BusinessInfo[C][BiznisVlasnik] == playerid)  BusinessInfo[C][BiznisVlasnik] = -1; //Deletes the owner.
    }
    return 1;
}

stock ChangeBusinessName(BusinessID, BusNamme)
{
    format(BusinessInfo[BusinessID][BiznisIme], 60, "%s", BusNamme);
    return 1;
}

stock DisableBusiness(BusinessID)
{
    BusinessInfo[BusinessID][Disabled] = 1;
    return 1;
}

stock EnableBusiness(BusinessID)
{
    BusinessInfo[BusinessID][Disabled] = 0;
    return 1;
}

stock DeleteBusinessOwner(BusinessID)
{
    BusinessInfo[BusinessID][BiznisVlasnik] = -1;
    return 1;
}

stock ChangeBusinessCost(BusinessID, BussCost)
{
    BusinessInfo[BusinessID][BiznisCijena] = BussCost;
    return 1;
}

stock ChangeBusinessSell(BusinessID, BussSell)
{
    BusinessInfo[BusinessID][BiznisProdaja] = BussSell;
    return 1;
}

stock ChangeBusinessEarn(BusinessID, Earrn)
{
    BusinessInfo[BusinessID][BiznisZarada] = Earrn;
}


slika by NaNx


www.balkan-city.info
vidi vise i osjeti razliku