[POMOC] Interier problem

Započeo 032.Marcus
7. Feb. 2014. Zaključano
385
pregleda
8
postova
032.Marcus
4
Made Man
7. Feb. 2014.
Scripta: Moja od 0
Problem: Kada napravim kucu/biznis, i stavim interier 1, onda kad udjem sve se vidi lepo, stavim interier 2, ne vidi se nista sve crno. Takodje, ne napravi mi pickup na lokaciji mojoj
Deo scripte:
EDIT: Sredio sam pickup, imam problem sada kada ugasim server i upalim, ne sacuva da sam kupio firmu/kucu.... Pomagajte molim vas, da zavrsim vise sa ovim.
YCMD:napravikucu(playerid, params[], help)
{
#pragma unused help
    if(!IsPlayerAdmin(playerid)) return SCM(playerid, -1, "GoMilano: Niste ovlasceni da koristite ovu komandu");

    new price, id, Int, VW, InInt;
    if(sscanf(params, "ii", price, InInt)) return SendClientMessage(playerid, -1, "Server: /napravikucu ");

    //if(type < 0 || type > 4) return SendClientMessage(playerid, -1, "Server: Ne ispod 0 ne vise od 10");//

    if(price < 10000) return SendClientMessage(playerid, -1, "bla bla $");

    for(new h = 1;h < sizeof(HouseInfo);h++)
    {
        if(HouseInfo == 0)
        {
            id = h;
            break;
        }
    }
    switch(InInt)
    {
        case 0:
{
        HouseInfo = 1;
HouseInfo = 222.98751831055;
    HouseInfo = 1287.8483886719;
    HouseInfo = 1082.140625;
}
case 1:
{
    HouseInfo = 1;
HouseInfo = 222.98751831055;
    HouseInfo = 1287.8483886719;
    HouseInfo = 1082.140625;
}
case 2:
{
    HouseInfo = 2;
  HouseInfo = 260.98806762695;
    HouseInfo = 1284.8311767578;
    HouseInfo = 1080.2578125;
}
}
    new Float:X,Float:Y,Float:Z,Float:A;
    GetPlayerPos(playerid, X, Y, Z);
    GetPlayerFacingAngle(playerid, A);
    Int = GetPlayerInterior(playerid);
    VW = GetPlayerVirtualWorld(playerid);

    HouseInfo = 0;
    HouseInfo = price;
    HouseInfo = X;
    HouseInfo = Y;
    HouseInfo = Z;
    HouseInfo = A;
    HouseInfo = 1;

    HouseInfo = Int;
    HouseInfo = VW;
    HouseInfo = id;

    if(HouseInfo) DestroyPickup(HouseInfo);
    HouseInfo = CreatePickup(1272, 1, HouseInfo, HouseInfo, HouseInfo, HouseInfo);
SaveHouse(id);
    return 1;
}


A evo i za ulazak:
YCMD:enter(playerid, params[], help)
{
    #pragma unused help
    for(new b = 1; b < sizeof(BusinessInfo); b++)
    {
        if(IsPlayerInRangeOfPoint(playerid, 1.0, BusinessInfo, BusinessInfo, BusinessInfo))
        {
            if(BusinessInfo == 1) return SendClientMessage(playerid, -1, "Ova firma je zakljucana");
            SetPlayerPos(playerid, BusinessInfo, BusinessInfo, BusinessInfo);
            SetPlayerFacingAngle(playerid, BusinessInfo);
            SetPlayerInterior(playerid, BusinessInfo);
            SetPlayerVirtualWorld(playerid, BusinessInfo);
            InBusiness = b;
            return 1;
        }
        if(IsPlayerInRangeOfPoint(playerid, 2.0, BusinessInfo, BusinessInfo, BusinessInfo) && GetPlayerVirtualWorld(playerid) == BusinessInfo)
        {
            SetPlayerPos(playerid, BusinessInfo, BusinessInfo, BusinessInfo);
            SetPlayerFacingAngle(playerid, BusinessInfo);
            SetPlayerInterior(playerid, BusinessInfo);
            SetPlayerVirtualWorld(playerid, BusinessInfo);
            InBusiness = 0;
            return 1;
        }
    }
   
    for(new b = 1; b < sizeof(HouseInfo); b++)
    {
        if(IsPlayerInRangeOfPoint(playerid, 1.0, HouseInfo, HouseInfo, HouseInfo))
        {
            if(BusinessInfo == 1) return SendClientMessage(playerid, -1, "Ova firma je zakljucana");
            SetPlayerPos(playerid, HouseInfo, HouseInfo, HouseInfo);
            SetPlayerFacingAngle(playerid, HouseInfo);
            SetPlayerInterior(playerid, HouseInfo);
            SetPlayerVirtualWorld(playerid, HouseInfo);
            InHouse = b;
            return 1;
        }
        if(IsPlayerInRangeOfPoint(playerid, 2.0, HouseInfo, HouseInfo, HouseInfo) && GetPlayerVirtualWorld(playerid) == HouseInfo)
        {
            SetPlayerPos(playerid, HouseInfo, HouseInfo, HouseInfo);
            SetPlayerFacingAngle(playerid, HouseInfo);
            SetPlayerInterior(playerid, HouseInfo);
            SetPlayerVirtualWorld(playerid, HouseInfo);
            InHouse = 0;
            return 1;
        }
    }
    return 1;
}


OnGameModeExit
public OnGameModeExit()
{
for(new id = 1; id < sizeof(BusinessInfo); id++)
    {
        if(BusinessInfo == 0) break;
        SaveBizz(id);
    }
   
    for(new id = 1; id < sizeof(HouseInfo); id++)
    {
        if(HouseInfo == 0) break;
        SaveHouse(id);
    }
return 1;
}
032.Marcus
4
Made Man
8. Feb. 2014.
Bump. Neko pomoc, molim vas, hitno je.
ermin.a
5
Underboss
8. Feb. 2014.
Da li si siguran da su tacne ko-ordinate i da su za pravi interior ?
Provjeri sa setpos i setinterior..
032.Marcus
4
Made Man
8. Feb. 2014.
Aha, radi sad. Nego imam problem da kad ugasim server, ne sacuva mi to da je kupljena kuca ili biznis... Vec moram opet da kupim, kad upalim server?
ermin.a
5
Underboss
8. Feb. 2014.
Ocito je problem do
SaveHouse
.
Daj nam kod
032.Marcus
4
Made Man
8. Feb. 2014.
forward SaveHouse(id);
public SaveHouse(id)
{
new hFile;
format(hFile, sizeof(hFile), HPATH, id);
new INI:File = INI_Open(hFile);
INI_SetTag(File, "data");
INI_WriteInt(File, "OwneD", HouseInfo);
INI_WriteInt(File, "Price", HouseInfo);
INI_WriteString(File, "Owner", HouseInfo);
INI_WriteInt(File, "Locked", HouseInfo);
INI_WriteFloat(File, "EnterX", HouseInfo);
INI_WriteFloat(File, "EnterY", HouseInfo);
INI_WriteFloat(File, "EnterZ", HouseInfo);
INI_WriteFloat(File, "EnterA", HouseInfo);
INI_WriteFloat(File, "ExitX", HouseInfo);
INI_WriteFloat(File, "ExitY", HouseInfo);
INI_WriteFloat(File, "ExitZ", HouseInfo);
INI_WriteFloat(File, "ExitA", HouseInfo);
INI_WriteInt(File, "Int", HouseInfo);
INI_WriteInt(File, "VW", HouseInfo);
INI_WriteInt(File, "InInt", HouseInfo);
INI_WriteInt(File, "InVW", HouseInfo);
INI_WriteInt(File, "ID", HouseInfo);
INI_Close(File);
return 1;
}

YCMD:kupikucu(playerid, params[], help)
{
#pragma unused help
    new id = IsPlayerBlizuUlazaKuce(playerid);

    if(id == -1 || id == 0) return SendClientMessage(playerid, -1, "Niste blizu firme");

    if(HouseInfo != 0 || HouseInfo == 0) return SendClientMessage(playerid, -1, "GoMilano: Ova kuca nije na prodaju.");

    if(PlayerInfo != 0) return SendClientMessage(playerid, -1, "GoMilano: Vec imate kucu.");

    if(GetPlayerMoney(playerid) < HouseInfo) return SendClientMessage(playerid, -1, "GoMilano: Nemate dovoljno novca da kupite kucu.");

    PlayerInfo = id;
    //PlayerInfo -= HouseInfo;
    GivePlayerMoney(playerid, -HouseInfo);

    HouseInfo = 0;
    HouseInfo = 1;
    HouseInfo = RemoveUnderScore(playerid);
SaveHouse(id);
    SendClientMessage(playerid, -1, "Cestitamo, kupili ste FIRMU!");
    return 1;
}


EDIT: Resio sam, ako  sam dobro proverio. Greska je bila u
INI_WriteInt(File, "OwneD", HouseInfo); >> hOwned

Sacuva mi da imam kucu, i da je kuca kupljena, ali mi prikaze onaj 3dTextLabel da nije kupljena. Takodje, imam pitanje kako da namestim da cim napravim kucu i cim kupim, da se 3dTextLabel napravi/skloni. Gde treba da stavim umesto OnGameModeinit ? Ovo pisem da ne bih otvarao svaki cas temu...
public OnGameModeInit()
{
EnableStuntBonusForAll(0);
DisableInteriorEnterExits();

SetGameModeText("Blank Script");
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);

new str;
    for(new idx = 1; idx < sizeof(BusinessInfo); idx++)
    {
        format(str, sizeof(str), BPATH, idx);
        INI_ParseFile(str, "SaveBusiness_%s", .bExtra = true, .extra = idx );
        BusinessInfo = CreatePickup(1272, 1, BusinessInfo, BusinessInfo, BusinessInfo, BusinessInfo);
        BusinessInfo = CreatePickup(1272, 1, BusinessInfo, BusinessInfo, BusinessInfo, BusinessInfo);
if(BusinessInfo == 0)
{
    new str1;
    format(str1, sizeof(str1), ""ZELENA" Ovaj biznis nema vlasnika !\n Cena biznisa: %d \n Tip biznisa: %d \n Da kupite ovaj biznis \n kucajte /kupifirmu", BusinessInfo, BusinessInfo);
    Create3DTextLabel(str1, -1, BusinessInfo, BusinessInfo, BusinessInfo, 20.0, BusinessInfo);
}
}

for(new idx = 1; idx < sizeof(HouseInfo); idx++)
    {
        format(str, sizeof(str), HPATH, idx);
        INI_ParseFile(str, "SaveHouse_%s", .bExtra = true, .extra = idx );
        HouseInfo = CreatePickup(1272, 1, HouseInfo, HouseInfo, HouseInfo, HouseInfo);
if(HouseInfo == 0)
{
    new str1;
    format(str1, sizeof(str1), ""ZELENA" Ova kuca nema vlasnika !\n Cena kuce: %d \n Da kupite ovu kucu \n kucajte /kupikucu", HouseInfo);
    Create3DTextLabel(str1, -1, HouseInfo, HouseInfo, HouseInfo, 20.0, HouseInfo);
}
}
return 1;
}
ermin.a
5
Underboss
8. Feb. 2014.
Evo ti primjer:
new Text3D:houselabelArray;

houselabelArray = CreateLabel(...);

Update3DTextLabel(houselabelArray, ...);

032.Marcus
4
Made Man
8. Feb. 2014.
Izvini ako sam dosadan, mozes mi reci samo da li stavljam sve ovo u OnGameModeInit tj, stavim u OnGameModeInit ono Create3dText label, a kad izvrsim komandu idem Update3dText label i izaberem taj ?

EDIT: Uspeo sam, ako neko moze nek vidi ono za Whirlpool, ovde moze lock.

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava

© 2026 SmartShark. All rights reserved.

Powered by Momentum|v2026.3.001 Alpha