Sistem ne zbraja ubojstva/smrti.

Započeo Plen Ki Mun
22. Dec. 2017. Zaključano
1,001
pregleda
7
postova
Mate
5
Underboss
22. Dec. 2017.
Skripta koju koristim: Skriptu koristim kao FS / Klan.

Detaljan opis problema: Filterskipta je pisana u SQLite, problem je u tome što kada netko iz bilo kojega klana ubije igraca ili netko umre skripta to ne zbraja u u Klan ubojsta to jest smrti. Sve ostane na 0

Dio skripte: pokazat cu dolje ima puno koda.

Neke slike/video za lakse dobivanje pomoci(neobavezno): //

@CADILAB @Ino42O @Slade
Netko iskusniji neka pomogne.

TABLE

clankills INT(5),\
clandeaths INT(5))");


ONPLAYERDEATH

public OnPlayerDeath(playerid, killerid, reason)
{
if(IsPlayerAnyClanMember(playerid) && IsPlayerAnyClanMember(killerid))
{
    if(strcmp(GetPlayerClan(playerid), GetPlayerClan(killerid), true, 30) == 0)
    {
        return 1;
}
else
{
    new CQuery;
format(CQuery, 200, "UPDATE `clans` SET `clankills` = `clankills`+1 = '%d' WHERE `clanname` = '%s'", GetClanKills(GetPlayerClan(killerid)) , GetPlayerClan(killerid));
  db_query(Database, CQuery);
format(CQuery, 200, "UPDATE `clans` SET `clandeaths` = `clandeaths`+1 = '%d' WHERE `clanname` = '%s'", GetClanDeaths(GetPlayerClan(playerid)) , GetPlayerClan(playerid));
db_query(Database, CQuery);
}
}
return 1;
}


KLAN STATISTIKA (OSTAJE NA 0)

format(csstr5, 120, "{E10000}• {FFFFFF}Clan Kills: %d\n", GetClanKills(GetPlayerClan(playerid)));
format(csstr6, 120, "{E10000}• {FFFFFF}Clan Deaths: %d\n", GetClanDeaths(GetPlayerClan(playerid)));


//----------------//
stock GetClanKills(clan[])
{
new CQuery, clan_kills;
format(CQuery, sizeof(CQuery), "SELECT `clankills` FROM `clans` WHERE `clanname` = '%s'", clan);
Result = db_query( Database, CQuery );
db_get_field_assoc( Result, "clankills", clan_kills, 30 );
db_free_result(Result);
return strval(clan_kills);
}
//----------------//
stock GetClanDeaths(clan[])
{
new CQuery, clan_deaths;
format(CQuery, sizeof(CQuery), "SELECT `clandeaths` FROM `clans` WHERE `clanname` = '%s'", clan);
Result = db_query( Database, CQuery );
db_get_field_assoc( Result, "clandeaths", clan_deaths, 30 );
db_free_result(Result);
return strval(clan_deaths);
}


stock CreateClan(playerid, clan_name[], clan_tag[], clan_description[], clan_motd[])
{
new CQuery, QCRows;

format(CQuery, 200, "SELECT `clanname` FROM `clans` WHERE `clanname` = '%s'", clan_name);
Result = db_query(Database, CQuery);
QCRows = db_num_rows(Result);
if(QCRows >= 1)
{
SendClientMessage(playerid, RED, "(ERROR): {FFFFFF}Isti klan postoji!");
return 0;
}
db_free_result(Result);
format(CQuery, 400, "INSERT INTO `clans`(`clanname`, `clantag`, `clanleader`, `clandes`, `clanmotd`, `clankills`, `clandeaths`) VALUES('%s', '%s', '%s', '%s', '%s', '0', '0')", clan_name, clan_tag, GetPlayerNameEx(playerid), clan_description, clan_motd);
db_query(Database, CQuery);
format(CQuery, 400, "INSERT INTO `members`(`clanname`, `playername`, `playerclanrank`, `isinclan`, `IsOnline`) VALUES('%s', '%s', 4, 1, 1)", clan_name, GetPlayerNameEx(playerid));
db_query(Database, CQuery);
return 1;
}
Mate
5
Underboss
22. Dec. 2017.
Itko ?
Chezno
4
Enforcer
22. Dec. 2017.
Jel ima neki log kao kod mysql-a? Tu ti sve pise kad ne updejta ili je premali query ili je empty (nisi lepo formatirao)?
Mate
5
Underboss
22. Dec. 2017.
\nLucius wrote on December 22, 2017, 2:28 pm:
Jel ima neki log kao kod mysql-a? Tu ti sve pise kad ne updejta ili je premali query ili je empty (nisi lepo formatirao)?


Ma nema toga, sve radi i testirano je na maximumu, ali samo to nece a uzim kills / deaths, to jest ne ocitava ih.
Bolex_
4
Made Man
22. Dec. 2017.
Gledaj, ti si postavio provjeru da ce dodati +1 u klan statistiku ako netko iz jednoga klana ubije nekoga iz drugog a ti hoces ako ubije bilo koga, jer tako ?

To bi ti ona išlo ovako.

public OnPlayerDeath(playerid, killerid, reason)
{
    new CQuery;
    format(CQuery, 200, "UPDATE `clans` SET `clankills` = `clankills`+1 = '%d' WHERE `clanname` = '%s'", GetClanKills(GetPlayerClan(killerid)) ,
    GetPlayerClan(killerid));
    db_query(Database, CQuery);
    format(CQuery, 200, "UPDATE `clans` SET `clandeaths` = `clandeaths`+1 = '%d' WHERE `clanname` = '%s'", GetClanDeaths(GetPlayerClan(playerid)) ,
    GetPlayerClan(playerid));
    b_query(Database, CQuery);
    return 1;
}
Mate
5
Underboss
23. Dec. 2017.
To je to, radi sve kako treba @Bolex_
ophion
5
OG Legend
23. Dec. 2017.


Riješenje je nađeno.

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava

© 2026 SmartShark. All rights reserved.

Powered by Momentum|v2026.3.001 Alpha