SA-MP Forums Archive
Delete this if... Read on - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: Delete this if... Read on (/showthread.php?tid=393317)



Delete this if... Read on - Glad2BeHere - 17.11.2012

pawn Код:
FamInfo[idx][fMembers]
I want to know if that the members in the family is less than a certain amount it deletes everything about the family


Re: Delete this if... Read on - Babul - 17.11.2012

hm... assuming that you setup it like
Код:
new Minimum_Family_Survive=3
then you could try:
Код:
if(FamInfo[index_here][fMembers]<Minimum_Family_Survive)
{
 for(new i=0;i<sizeof(FamInfo[index_here][fMembers];i++)
 {
//  FamInfo[index_here][f_All_Your_Entries]=0;//in case its an integer like "days alive"=365, now its 0.
//  FamInfo[index_here][fName]="died out";//or you better set it to "" or a blank space "_" ?
 }
 FamInfo[index_here][fMembers]=0;
}
wait, i encountered some bugs. dont use it yet. editing
may i see some more snippets like your setup for the families?
how can the script know which member (like #0 for dad, #1 for mom, #2 for baby etc)?
if the first family gets created, i assume its
Код:
FamInfo[0][fMembers]=2;
FamInfo[0][fName]="Just Married";
so you wold need a third dimension, right?
Код:
enum FamInfo{
 fiName
 fiAge
 fiGender
}
new gFamily[MAX_MEMBERS][FamInfo];
...but how are you going to create families including members, including attributes asigned to each member?


Re: Delete this if... Read on - Glad2BeHere - 18.11.2012

ty for the help


Re: Delete this if... Read on - Glad2BeHere - 18.11.2012

pawn Код:
#define MAX_FAMILIES 11

enum famInfo
{
    fTaken,
    fName[32],
    fMOTD[64],
    fColor,
    fLeader[MAX_PLAYER_NAME],
    fMembers,
    Float:fSafeX,
    Float:fSafeY,
    Float:fSafeZ,
    fMoney,
    fMats,
    fWeed,
    fCrack,
    fRank1[32],
    fRank2[32],
    fRank3[32],
    fRank4[32],
    fRank5[32],
    fRank6[32],
    fSkins[7],
    fStrikes,
    Text3D:fText,
    fPickup,
    fVeh[5],
    fVehType[5],
    Float:fVehCoX[5],
    Float:fVehCoY[5],
    Float:fVehCoZ[5],
    fVehCol1[5],
    fVehCol2[5],
    Float:fVehRot[5]
}
new FamInfo[MAX_FAMILIES][famInfo];


stock SaveFamilies()
{
    new idx = 1, File:file;
    new string[1300];
    while(idx < MAX_FAMILIES)
    {
        format(string, sizeof(string), "%d|%s|%s|%d|%s|%d|%f|%f|%f|%d|%d|%d|%d|%s|%s|%s|%s|%s|%s|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d\r\n",
        FamInfo[idx][fTaken],
        FamInfo[idx][fName],
        FamInfo[idx][fMOTD],
        FamInfo[idx][fColor],
        FamInfo[idx][fLeader],
        FamInfo[idx][fMembers],
        FamInfo[idx][fSafeX],
        FamInfo[idx][fSafeY],
        FamInfo[idx][fSafeZ],
        FamInfo[idx][fMoney],
        FamInfo[idx][fMats],
        FamInfo[idx][fWeed],
        FamInfo[idx][fCrack],
        FamInfo[idx][fRank1],
        FamInfo[idx][fRank2],
        FamInfo[idx][fRank3],
        FamInfo[idx][fRank4],
        FamInfo[idx][fRank5],
        FamInfo[idx][fRank6],
        FamInfo[idx][fSkins][0],
        FamInfo[idx][fSkins][1],
        FamInfo[idx][fSkins][2],
        FamInfo[idx][fSkins][3],
        FamInfo[idx][fSkins][4],
        FamInfo[idx][fSkins][5],
        FamInfo[idx][fSkins][6],
        FamInfo[idx][fStrikes],
        FamInfo[idx][fVehType][0], // Veh 1
        FamInfo[idx][fVehType][1], // Veh 2
        FamInfo[idx][fVehType][2], // Veh 3
        FamInfo[idx][fVehType][3], // Veh 4
        FamInfo[idx][fVehType][4], // Veh 5
        FamInfo[idx][fVehCoX][0], // Veh 1 Coords
        FamInfo[idx][fVehCoY][0],
        FamInfo[idx][fVehCoZ][0],
        FamInfo[idx][fVehCoX][1], // Veh 2 Coords
        FamInfo[idx][fVehCoY][1],
        FamInfo[idx][fVehCoZ][1],
        FamInfo[idx][fVehCoX][2], // Veh 3 Coords
        FamInfo[idx][fVehCoY][2],
        FamInfo[idx][fVehCoZ][2],
        FamInfo[idx][fVehCoX][3], // Veh 4 Coords
        FamInfo[idx][fVehCoY][3],
        FamInfo[idx][fVehCoZ][3],
        FamInfo[idx][fVehCoX][4], // Veh 5 Coords
        FamInfo[idx][fVehCoY][4],
        FamInfo[idx][fVehCoZ][4],
        FamInfo[idx][fVehRot][0],
        FamInfo[idx][fVehRot][1],
        FamInfo[idx][fVehRot][2],
        FamInfo[idx][fVehRot][3],
        FamInfo[idx][fVehRot][4],
        FamInfo[idx][fVehCol1][0],
        FamInfo[idx][fVehCol1][1],
        FamInfo[idx][fVehCol1][2],
        FamInfo[idx][fVehCol1][3],
        FamInfo[idx][fVehCol1][4],
        FamInfo[idx][fVehCol2][0],
        FamInfo[idx][fVehCol2][1],
        FamInfo[idx][fVehCol2][2],
        FamInfo[idx][fVehCol2][3],
        FamInfo[idx][fVehCol2][4]);
        if(idx == 1)
        {
            file = fopen("families.cfg", io_write);
        }
        else
        {
            file = fopen("families.cfg", io_append);
        }
        fwrite(file, string);
        fclose(file);
        idx++;
    }
    print("Families saved successfully.");
}

stock LoadFamilies()
{
    new finfo[62][48];
    new string[512];
    new File:file = fopen("families.cfg", io_read);
    if(file)
    {
        new idx = 1;
        while(idx < MAX_FAMILIES)
        {
            fread(file, string);
            split(string, finfo, '|');
            FamInfo[idx][fTaken] = strval(finfo[0]);
            format(FamInfo[idx][fName], 32, "%s", finfo[1]);
            format(FamInfo[idx][fMOTD], 64, "%s", finfo[2]);
            FamInfo[idx][fColor] = strval(finfo[3]);
            format(FamInfo[idx][fLeader], MAX_PLAYER_NAME, "%s", finfo[4]);
            FamInfo[idx][fMembers] = strval(finfo[5]);
            FamInfo[idx][fSafeX] = floatstr(finfo[6]);
            FamInfo[idx][fSafeY] = floatstr(finfo[7]);
            FamInfo[idx][fSafeZ] = floatstr(finfo[8]);
            FamInfo[idx][fMoney] = strval(finfo[9]);
            FamInfo[idx][fMats] = strval(finfo[10]);
            FamInfo[idx][fWeed] = strval(finfo[11]);
            FamInfo[idx][fCrack] = strval(finfo[12]);
            format(FamInfo[idx][fRank1], 32, "%s", finfo[13]);
            format(FamInfo[idx][fRank2], 32, "%s", finfo[14]);
            format(FamInfo[idx][fRank3], 32, "%s", finfo[15]);
            format(FamInfo[idx][fRank4], 32, "%s", finfo[16]);
            format(FamInfo[idx][fRank5], 32, "%s", finfo[17]);
            format(FamInfo[idx][fRank6], 32, "%s", finfo[18]);
            FamInfo[idx][fSkins][0] = strval(finfo[19]);
            FamInfo[idx][fSkins][1] = strval(finfo[20]);
            FamInfo[idx][fSkins][2] = strval(finfo[21]);
            FamInfo[idx][fSkins][3] = strval(finfo[22]);
            FamInfo[idx][fSkins][4] = strval(finfo[23]);
            FamInfo[idx][fSkins][5] = strval(finfo[24]);
            FamInfo[idx][fSkins][6] = strval(finfo[25]);
            FamInfo[idx][fStrikes] = strval(finfo[26]);
            FamInfo[idx][fVehType][0] = strval(finfo[27]);
            FamInfo[idx][fVehType][1] = strval(finfo[28]);
            FamInfo[idx][fVehType][2] = strval(finfo[29]);
            FamInfo[idx][fVehType][3] = strval(finfo[30]);
            FamInfo[idx][fVehType][4] = strval(finfo[31]);
            FamInfo[idx][fVehCoX][0] = floatstr(finfo[32]);
            FamInfo[idx][fVehCoY][0] = floatstr(finfo[33]);
            FamInfo[idx][fVehCoZ][0] = floatstr(finfo[34]);
            FamInfo[idx][fVehCoX][1] = floatstr(finfo[35]);
            FamInfo[idx][fVehCoY][1] = floatstr(finfo[36]);
            FamInfo[idx][fVehCoZ][1] = floatstr(finfo[37]);
            FamInfo[idx][fVehCoX][2] = floatstr(finfo[38]);
            FamInfo[idx][fVehCoY][2] = floatstr(finfo[39]);
            FamInfo[idx][fVehCoZ][2] = floatstr(finfo[40]);
            FamInfo[idx][fVehCoX][3] = floatstr(finfo[41]);
            FamInfo[idx][fVehCoY][3] = floatstr(finfo[42]);
            FamInfo[idx][fVehCoZ][3] = floatstr(finfo[43]);
            FamInfo[idx][fVehCoX][4] = floatstr(finfo[44]);
            FamInfo[idx][fVehCoY][4] = floatstr(finfo[45]);
            FamInfo[idx][fVehCoZ][4] = floatstr(finfo[46]);
            FamInfo[idx][fVehRot][0] = strval(finfo[47]); // Rot
            FamInfo[idx][fVehRot][1] = strval(finfo[48]);
            FamInfo[idx][fVehRot][2] = strval(finfo[49]);
            FamInfo[idx][fVehRot][3] = strval(finfo[50]);
            FamInfo[idx][fVehRot][4] = strval(finfo[51]);
            FamInfo[idx][fVehCol1][0] = strval(finfo[52]); // Colors
            FamInfo[idx][fVehCol1][1] = strval(finfo[53]);
            FamInfo[idx][fVehCol1][2] = strval(finfo[54]);
            FamInfo[idx][fVehCol1][3] = strval(finfo[55]);
            FamInfo[idx][fVehCol1][4] = strval(finfo[56]);
            FamInfo[idx][fVehCol2][0] = strval(finfo[57]);
            FamInfo[idx][fVehCol2][1] = strval(finfo[58]);
            FamInfo[idx][fVehCol2][2] = strval(finfo[59]);
            FamInfo[idx][fVehCol2][3] = strval(finfo[60]);
            FamInfo[idx][fVehCol2][4] = strval(finfo[61]);

            if(FamInfo[idx][fSafeX] != 0 && FamInfo[idx][fSafeY] != 0 && FamInfo[idx][fSafeZ] != 0)
            {
                FamInfo[idx][fPickup] = CreateDynamicPickup(1239, 1, FamInfo[idx][fSafeX], FamInfo[idx][fSafeY], FamInfo[idx][fSafeZ], -1);
                format(string, sizeof(string), "%s's Safe", FamInfo[idx][fName]);
                FamInfo[idx][fText] = CreateDynamic3DTextLabel(string, COLOR_WHITE, FamInfo[idx][fSafeX], FamInfo[idx][fSafeY], FamInfo[idx][fSafeZ]+0.3, 15);
            }
            for(new i=0; i<5; i++)
            {
                if(FamInfo[idx][fVehType][i])
                {
                    FamInfo[idx][fVeh][i] = CreateVehicle(FamInfo[idx][fVehType][i], FamInfo[idx][fVehCoX][i], FamInfo[idx][fVehCoY][i], FamInfo[idx][fVehCoZ][i], FamInfo[idx][fVehRot][i], FamInfo[idx][fVehCol1][i], FamInfo[idx][fVehCol2][i], 1200);
                    ChangeVehicleColor(FamInfo[idx][fVeh][i], FamInfo[idx][fVehCol1][i], FamInfo[idx][fVehCol2][i]);
                    Fam[FamInfo[idx][fVeh][i]] = idx;
                }
            }
            idx++;
        }
    }
    print("Families loaded successfully.");
    return 1;
}
Didnt Make it but i trying to get ideas from it to make my own unique faction system, so im trying to figure out how to delete if members are less than 10, took it from z gaming gm


Re: Delete this if... Read on - Glad2BeHere - 18.11.2012

pawn Код:
#define MAX_FAMILIES 11

enum famInfo
{
    fTaken,
    fName[32],
    fMOTD[64],
    fColor,
    fLeader[MAX_PLAYER_NAME],
    fMembers,
    Float:fSafeX,
    Float:fSafeY,
    Float:fSafeZ,
    fMoney,
    fMats,
    fWeed,
    fCrack,
    fRank1[32],
    fRank2[32],
    fRank3[32],
    fRank4[32],
    fRank5[32],
    fRank6[32],
    fSkins[7],
    fStrikes,
    Text3D:fText,
    fPickup,
    fVeh[5],
    fVehType[5],
    Float:fVehCoX[5],
    Float:fVehCoY[5],
    Float:fVehCoZ[5],
    fVehCol1[5],
    fVehCol2[5],
    Float:fVehRot[5]
}
new FamInfo[MAX_FAMILIES][famInfo];


stock SaveFamilies()
{
    new idx = 1, File:file;
    new string[1300];
    while(idx < MAX_FAMILIES)
    {
        format(string, sizeof(string), "%d|%s|%s|%d|%s|%d|%f|%f|%f|%d|%d|%d|%d|%s|%s|%s|%s|%s|%s|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f|%d|%d|%d|%d|%d|%d|%d|%d|%d|%d\r\n",
        FamInfo[idx][fTaken],
        FamInfo[idx][fName],
        FamInfo[idx][fMOTD],
        FamInfo[idx][fColor],
        FamInfo[idx][fLeader],
        FamInfo[idx][fMembers],
        FamInfo[idx][fSafeX],
        FamInfo[idx][fSafeY],
        FamInfo[idx][fSafeZ],
        FamInfo[idx][fMoney],
        FamInfo[idx][fMats],
        FamInfo[idx][fWeed],
        FamInfo[idx][fCrack],
        FamInfo[idx][fRank1],
        FamInfo[idx][fRank2],
        FamInfo[idx][fRank3],
        FamInfo[idx][fRank4],
        FamInfo[idx][fRank5],
        FamInfo[idx][fRank6],
        FamInfo[idx][fSkins][0],
        FamInfo[idx][fSkins][1],
        FamInfo[idx][fSkins][2],
        FamInfo[idx][fSkins][3],
        FamInfo[idx][fSkins][4],
        FamInfo[idx][fSkins][5],
        FamInfo[idx][fSkins][6],
        FamInfo[idx][fStrikes],
        FamInfo[idx][fVehType][0], // Veh 1
        FamInfo[idx][fVehType][1], // Veh 2
        FamInfo[idx][fVehType][2], // Veh 3
        FamInfo[idx][fVehType][3], // Veh 4
        FamInfo[idx][fVehType][4], // Veh 5
        FamInfo[idx][fVehCoX][0], // Veh 1 Coords
        FamInfo[idx][fVehCoY][0],
        FamInfo[idx][fVehCoZ][0],
        FamInfo[idx][fVehCoX][1], // Veh 2 Coords
        FamInfo[idx][fVehCoY][1],
        FamInfo[idx][fVehCoZ][1],
        FamInfo[idx][fVehCoX][2], // Veh 3 Coords
        FamInfo[idx][fVehCoY][2],
        FamInfo[idx][fVehCoZ][2],
        FamInfo[idx][fVehCoX][3], // Veh 4 Coords
        FamInfo[idx][fVehCoY][3],
        FamInfo[idx][fVehCoZ][3],
        FamInfo[idx][fVehCoX][4], // Veh 5 Coords
        FamInfo[idx][fVehCoY][4],
        FamInfo[idx][fVehCoZ][4],
        FamInfo[idx][fVehRot][0],
        FamInfo[idx][fVehRot][1],
        FamInfo[idx][fVehRot][2],
        FamInfo[idx][fVehRot][3],
        FamInfo[idx][fVehRot][4],
        FamInfo[idx][fVehCol1][0],
        FamInfo[idx][fVehCol1][1],
        FamInfo[idx][fVehCol1][2],
        FamInfo[idx][fVehCol1][3],
        FamInfo[idx][fVehCol1][4],
        FamInfo[idx][fVehCol2][0],
        FamInfo[idx][fVehCol2][1],
        FamInfo[idx][fVehCol2][2],
        FamInfo[idx][fVehCol2][3],
        FamInfo[idx][fVehCol2][4]);
        if(idx == 1)
        {
            file = fopen("families.cfg", io_write);
        }
        else
        {
            file = fopen("families.cfg", io_append);
        }
        fwrite(file, string);
        fclose(file);
        idx++;
    }
    print("Families saved successfully.");
}

stock LoadFamilies()
{
    new finfo[62][48];
    new string[512];
    new File:file = fopen("families.cfg", io_read);
    if(file)
    {
        new idx = 1;
        while(idx < MAX_FAMILIES)
        {
            fread(file, string);
            split(string, finfo, '|');
            FamInfo[idx][fTaken] = strval(finfo[0]);
            format(FamInfo[idx][fName], 32, "%s", finfo[1]);
            format(FamInfo[idx][fMOTD], 64, "%s", finfo[2]);
            FamInfo[idx][fColor] = strval(finfo[3]);
            format(FamInfo[idx][fLeader], MAX_PLAYER_NAME, "%s", finfo[4]);
            FamInfo[idx][fMembers] = strval(finfo[5]);
            FamInfo[idx][fSafeX] = floatstr(finfo[6]);
            FamInfo[idx][fSafeY] = floatstr(finfo[7]);
            FamInfo[idx][fSafeZ] = floatstr(finfo[8]);
            FamInfo[idx][fMoney] = strval(finfo[9]);
            FamInfo[idx][fMats] = strval(finfo[10]);
            FamInfo[idx][fWeed] = strval(finfo[11]);
            FamInfo[idx][fCrack] = strval(finfo[12]);
            format(FamInfo[idx][fRank1], 32, "%s", finfo[13]);
            format(FamInfo[idx][fRank2], 32, "%s", finfo[14]);
            format(FamInfo[idx][fRank3], 32, "%s", finfo[15]);
            format(FamInfo[idx][fRank4], 32, "%s", finfo[16]);
            format(FamInfo[idx][fRank5], 32, "%s", finfo[17]);
            format(FamInfo[idx][fRank6], 32, "%s", finfo[18]);
            FamInfo[idx][fSkins][0] = strval(finfo[19]);
            FamInfo[idx][fSkins][1] = strval(finfo[20]);
            FamInfo[idx][fSkins][2] = strval(finfo[21]);
            FamInfo[idx][fSkins][3] = strval(finfo[22]);
            FamInfo[idx][fSkins][4] = strval(finfo[23]);
            FamInfo[idx][fSkins][5] = strval(finfo[24]);
            FamInfo[idx][fSkins][6] = strval(finfo[25]);
            FamInfo[idx][fStrikes] = strval(finfo[26]);
            FamInfo[idx][fVehType][0] = strval(finfo[27]);
            FamInfo[idx][fVehType][1] = strval(finfo[28]);
            FamInfo[idx][fVehType][2] = strval(finfo[29]);
            FamInfo[idx][fVehType][3] = strval(finfo[30]);
            FamInfo[idx][fVehType][4] = strval(finfo[31]);
            FamInfo[idx][fVehCoX][0] = floatstr(finfo[32]);
            FamInfo[idx][fVehCoY][0] = floatstr(finfo[33]);
            FamInfo[idx][fVehCoZ][0] = floatstr(finfo[34]);
            FamInfo[idx][fVehCoX][1] = floatstr(finfo[35]);
            FamInfo[idx][fVehCoY][1] = floatstr(finfo[36]);
            FamInfo[idx][fVehCoZ][1] = floatstr(finfo[37]);
            FamInfo[idx][fVehCoX][2] = floatstr(finfo[38]);
            FamInfo[idx][fVehCoY][2] = floatstr(finfo[39]);
            FamInfo[idx][fVehCoZ][2] = floatstr(finfo[40]);
            FamInfo[idx][fVehCoX][3] = floatstr(finfo[41]);
            FamInfo[idx][fVehCoY][3] = floatstr(finfo[42]);
            FamInfo[idx][fVehCoZ][3] = floatstr(finfo[43]);
            FamInfo[idx][fVehCoX][4] = floatstr(finfo[44]);
            FamInfo[idx][fVehCoY][4] = floatstr(finfo[45]);
            FamInfo[idx][fVehCoZ][4] = floatstr(finfo[46]);
            FamInfo[idx][fVehRot][0] = strval(finfo[47]); // Rot
            FamInfo[idx][fVehRot][1] = strval(finfo[48]);
            FamInfo[idx][fVehRot][2] = strval(finfo[49]);
            FamInfo[idx][fVehRot][3] = strval(finfo[50]);
            FamInfo[idx][fVehRot][4] = strval(finfo[51]);
            FamInfo[idx][fVehCol1][0] = strval(finfo[52]); // Colors
            FamInfo[idx][fVehCol1][1] = strval(finfo[53]);
            FamInfo[idx][fVehCol1][2] = strval(finfo[54]);
            FamInfo[idx][fVehCol1][3] = strval(finfo[55]);
            FamInfo[idx][fVehCol1][4] = strval(finfo[56]);
            FamInfo[idx][fVehCol2][0] = strval(finfo[57]);
            FamInfo[idx][fVehCol2][1] = strval(finfo[58]);
            FamInfo[idx][fVehCol2][2] = strval(finfo[59]);
            FamInfo[idx][fVehCol2][3] = strval(finfo[60]);
            FamInfo[idx][fVehCol2][4] = strval(finfo[61]);

            if(FamInfo[idx][fSafeX] != 0 && FamInfo[idx][fSafeY] != 0 && FamInfo[idx][fSafeZ] != 0)
            {
                FamInfo[idx][fPickup] = CreateDynamicPickup(1239, 1, FamInfo[idx][fSafeX], FamInfo[idx][fSafeY], FamInfo[idx][fSafeZ], -1);
                format(string, sizeof(string), "%s's Safe", FamInfo[idx][fName]);
                FamInfo[idx][fText] = CreateDynamic3DTextLabel(string, COLOR_WHITE, FamInfo[idx][fSafeX], FamInfo[idx][fSafeY], FamInfo[idx][fSafeZ]+0.3, 15);
            }
            for(new i=0; i<5; i++)
            {
                if(FamInfo[idx][fVehType][i])
                {
                    FamInfo[idx][fVeh][i] = CreateVehicle(FamInfo[idx][fVehType][i], FamInfo[idx][fVehCoX][i], FamInfo[idx][fVehCoY][i], FamInfo[idx][fVehCoZ][i], FamInfo[idx][fVehRot][i], FamInfo[idx][fVehCol1][i], FamInfo[idx][fVehCol2][i], 1200);
                    ChangeVehicleColor(FamInfo[idx][fVeh][i], FamInfo[idx][fVehCol1][i], FamInfo[idx][fVehCol2][i]);
                    Fam[FamInfo[idx][fVeh][i]] = idx;
                }
            }
            idx++;
        }
    }
    print("Families loaded successfully.");
    return 1;
}
Didnt Make it but i trying to get ideas from it to make my own unique faction system, so im trying to figure out how to delete if members are less than 10, took it from z gaming gm