Problem sa citanje vikendicu/stan


Započeo fiu, April 27, 2020, 15:09:16 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

fiu

*

Problem(error/warning): idem ingame, kupim vikendica il stan, sve okej, kupim i kucu al kad idem relog, kad ugasim srw i upalim ponovo, vikendica i stan kaze da su oduzmeni od admina, evo slika dole.
Dio skripte: Balkan Evolution MOD (UP valjda izvorni)
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log)
Slika/video ingame problema(obavezno ako je ingame problem): https://imgur.com/cIDwyt0

Daj prvo taj deo gde ispise tu poruku, ceo callback, pretpostavljam da je OnPlayerSpawn..

I onda salji kada igrac kupi kucu. Takodje mozes poslati i OnPlayerDisconnect kada se sacuva acc igraca

fiu

*

Citat: V01D poslato April 27, 2020, 16:25:41 POSLE PODNE
Daj prvo taj deo gde ispise tu poruku, ceo callback, pretpostavljam da je OnPlayerSpawn..

I onda salji kada igrac kupi kucu. Takodje mozes poslati i OnPlayerDisconnect kada se sacuva acc igraca


if(PLAYER_ENUM[playerid][pPosedovanje_Vikendice] != -1)
					{
						new vik_File[50];
						format(vik_File, sizeof(vik_File), vik_File, PLAYER_ENUM[playerid][pPosedovanje_Vikendice]);
						if(fexist(vik_File))
						{
							if(strcmp(VIKENDICA_ENUM[PLAYER_ENUM[playerid][pPosedovanje_Vikendice]][viVlasnik], GetName(playerid), true))
							{
								GRESKA(playerid, "Vikendica koja je bila u vasem vlasnistvu je prodata, kljuc vam je skinut!");
								GRESKA(playerid, "Ukoliko mislite da je ovo greska ili zelite da znate razlog prodaje vase vikendice obratite se ADMINU!");
								GRESKA(playerid, "Takodje je moguce da vam je vikendica prodata zbog neaktivnosti!");
								PLAYER_ENUM[playerid][pPosedovanje_Vikendice] = -1; SacuvajKorisnike(playerid);
							}
							else
							{
								VIKENDICA_ENUM[PLAYER_ENUM[playerid][pPosedovanje_Vikendice]][viNeaktivnost] = 0;
								SacuvajVikendicu(PLAYER_ENUM[playerid][pPosedovanje_Vikendice]);
								VikendicaLP(PLAYER_ENUM[playerid][pPosedovanje_Vikendice]);
							}
						}
						else
						{
							GRESKA(playerid, "Vikendica koja je bila u vasem vlasnistvu je obrisana, kljuc vam je skinut!");
							GRESKA(playerid, "Ukoliko mislite da je ovo greska ili zelite da znate razlog brisanja vase vikendice obratite se ADMINU!");
							PLAYER_ENUM[playerid][pPosedovanje_Vikendice] = -1; SacuvajKorisnike(playerid);
						}
					}



CMD:kupivikendicu(playerid, params[])
{
	#pragma unused params
	for(new i; i < sizeof(VIKENDICA_ENUM); i++)
	{
		if(IsPlayerInRangeOfPoint(playerid, 3.0, VIKENDICA_ENUM[i][viUlazX], VIKENDICA_ENUM[i][viUlazY], VIKENDICA_ENUM[i][viUlazZ]))
		{
			if(!strcmp(VIKENDICA_ENUM[i][viVlasnik], "Niko", true) && VIKENDICA_ENUM[i][viProveraVlasnika] == 0)
			{
				if(PLAYER_ENUM[playerid][pPosedovanje_Vikendice] != -1) return GRESKA(playerid, "Vec imas vikendicu!");
				if(GetPlayerScore(playerid) < VIKENDICA_ENUM[i][viLevel]) return GRESKA(playerid, "Nemate dovoljan level za kupovinu vikendice!");
				if(PLAYER_ENUM[playerid][pNovac] < VIKENDICA_ENUM[i][viCena]) return GRESKA(playerid, "Nemate dovoljno novca za kupovinu vikendice!");
				strmid(VIKENDICA_ENUM[i][viVlasnik], GetName(playerid), 0, strlen(GetName(playerid)), 255);
				VIKENDICA_ENUM[i][viProveraVlasnika] = 1;
				VIKENDICA_ENUM[i][viZatvoreno] = 1;
				SacuvajVikendicu(i);
				PLAYER_ENUM[playerid][pPosedovanje_Vikendice] = i;
				g_NovacMinus(playerid, VIKENDICA_ENUM[i][viCena]);
				VikendicaLP(i);
				INFO(playerid, "Cestitamo, kupili ste vikendicu!");
				INFO(playerid, "Za komande vikendice koristite /vikendica!");
				INFO(playerid, "Za ulaz u vikendicu koristi tipku F!");
				
				return 1;
			}
			else return GRESKA(playerid, "Ta vikendica se ne prodaje!");
		}
	}
	return 1;
}


stock SacuvajVikendicu(idvikendice)
{
	new vFile[128];
	format(vFile, sizeof(vFile), VIKENDICE_FILE, idvikendice);
	new INI:File = INI_Open(vFile);
	INI_WriteInt(File,"ProveraVlasnika",VIKENDICA_ENUM[idvikendice][viProveraVlasnika]);
	INI_WriteString(File,"Vlasnik",VIKENDICA_ENUM[idvikendice][viVlasnik]);
	INI_WriteFloat(File,"UlazX",VIKENDICA_ENUM[idvikendice][viUlazX]);
	INI_WriteFloat(File,"UlazY",VIKENDICA_ENUM[idvikendice][viUlazY]);
	INI_WriteFloat(File,"UlazZ",VIKENDICA_ENUM[idvikendice][viUlazZ]);
	INI_WriteFloat(File,"IzlazX",VIKENDICA_ENUM[idvikendice][viIzlazX]);
	INI_WriteFloat(File,"IzlazY",VIKENDICA_ENUM[idvikendice][viIzlazY]);
	INI_WriteFloat(File,"IzlazZ",VIKENDICA_ENUM[idvikendice][viIzlazZ]);
	INI_WriteInt(File,"Level",VIKENDICA_ENUM[idvikendice][viLevel]);
	INI_WriteInt(File,"Cena",VIKENDICA_ENUM[idvikendice][viCena]);
	INI_WriteInt(File,"Novac",VIKENDICA_ENUM[idvikendice][viNovac]);
	INI_WriteInt(File,"Int",VIKENDICA_ENUM[idvikendice][viInt]);
	INI_WriteInt(File,"Zatvoreno",VIKENDICA_ENUM[idvikendice][viZatvoreno]);
	INI_WriteInt(File,"VW",VIKENDICA_ENUM[idvikendice][viVW]);
	INI_WriteInt(File,"Cannabis",VIKENDICA_ENUM[idvikendice][viMarihuana]);
	INI_WriteInt(File,"Kokain",VIKENDICA_ENUM[idvikendice][viKokain]);
	INI_WriteInt(File,"Mats",VIKENDICA_ENUM[idvikendice][viMaterijali]);
	INI_Close(File);
	return 1;
}

fiu

*

izvinite al moze li neko da resi ovo, hitno mi je, obrisite mi komentar nije mi za postova

@V01D

Provjeri ucitavanje vikendice daj nam ovde da pogledamo
AKO ZNAS ZA BOGA I ZA GLAVU ZIVU NE BRANI MI DOKTORE RAKIJU I PIVU

fiu

*

Citat: // lestra poslato April 29, 2020, 11:09:40 PRE PODNE
Provjeri ucitavanje vikendice daj nam ovde da pogledamo

lfunc UcitajVikendice(idvikendice, name[], value[])
{
	INI_Int("ProveraVlasnika",VIKENDICA_ENUM[idvikendice][viProveraVlasnika]);
	INI_String("Vlasnik",VIKENDICA_ENUM[idvikendice][viVlasnik],45);
	INI_Float("UlazX",VIKENDICA_ENUM[idvikendice][viUlazX]);
	INI_Float("UlazY",VIKENDICA_ENUM[idvikendice][viUlazY]);
	INI_Float("UlazZ",VIKENDICA_ENUM[idvikendice][viUlazZ]);
	INI_Float("IzlazX",VIKENDICA_ENUM[idvikendice][viIzlazX]);
	INI_Float("IzlazY",VIKENDICA_ENUM[idvikendice][viIzlazY]);
	INI_Float("IzlazZ",VIKENDICA_ENUM[idvikendice][viIzlazZ]);
	INI_Int("Level",VIKENDICA_ENUM[idvikendice][viLevel]);
	INI_Int("Cena",VIKENDICA_ENUM[idvikendice][viCena]);
	INI_Int("Novac",VIKENDICA_ENUM[idvikendice][viNovac]);
	INI_Int("Int",VIKENDICA_ENUM[idvikendice][viInt]);
	INI_Int("Zatvoreno",VIKENDICA_ENUM[idvikendice][viZatvoreno]);
	INI_Int("VW",VIKENDICA_ENUM[idvikendice][viVW]);
	INI_Int("Cannabis",VIKENDICA_ENUM[idvikendice][viMarihuana]);
	INI_Int("Kokain",VIKENDICA_ENUM[idvikendice][viKokain]);
	INI_Int("Mats",VIKENDICA_ENUM[idvikendice][viMaterijali]);
	return 1;
}

fiu

*

1. kreiram vikendicu
2. kupujem vikendicu
3. /vikendica sve to radi perfektno
4. idem relog
5. u korisnika pise vikendica ta i taj da je igrac poseduje
6. u vikendica pise da se vlanik taj i taj, sve okej
7. ugasim mod, pustim ga opet
8. idem ing kazhe da je vikendica obrisana, a na serveru je a kod igraca /vikendica kaze da nema :@

Koliko vidim, ovo je neki ATH mod sa proverom neaktivnosti koja se verovatno ne cuva kako treba.
Nadji tu poruku u modu sa find opcijom i videces sta pravi problem.
[Include] > Optidraw
[Include] > Model-Sizes-SQL

fiu

*

Citat: algorhitmically poslato Maj 05, 2020, 13:20:37 POSLE PODNE
Koliko vidim, ovo je neki ATH mod sa proverom neaktivnosti koja se verovatno ne cuva kako treba.
Nadji tu poruku u modu sa find opcijom i videces sta pravi problem.
sve je isto kao kuca neaktivnost, a kuca sacuva kao sto treba stanove i vikendice nece

Moras prvo dodati timer npr svakih 1h da za sve vikendice dodaje ++ za ovo: viNeaktivnost, moras sacuvavati u fajl isto neaktivnost, posle tog npr ako je neaktivan 720h da mu oduzima kada udje vikendicu (to je cisto ako nekome se svidja neka vikendica a ne zna da adminu treba prijaviti da je neaktivan da se admin ne muci provjeravati da mu samo skine), ako je admin prije tog nije oduzeo, i tu dolazi ova provjera:

if(strcmp(VIKENDICA_ENUM[PLAYER_ENUM[playerid][pPosedovanje_Vikendice]][viVlasnik], GetName(playerid), true)) {
	if(PLAYER_ENUM[playerid][pPosedovanje_Vikendice]][viNeaktivnost] >= 720) {
		GRESKA(playerid, "Vikendica koja je bila u vasem vlasnistvu je prodata, kljuc vam je skinut!");
		GRESKA(playerid, "Ukoliko mislite da je ovo greska ili zelite da znate razlog prodaje vase vikendice obratite se ADMINU!");
		GRESKA(playerid, "Takodje je moguce da vam je vikendica prodata zbog neaktivnosti!");
		PLAYER_ENUM[playerid][pPosedovanje_Vikendice] = -1; SacuvajKorisnike(playerid);
	}
	else {
		VIKENDICA_ENUM[PLAYER_ENUM[playerid][pPosedovanje_Vikendice]][viNeaktivnost] = 0;
		SacuvajVikendicu(PLAYER_ENUM[playerid][pPosedovanje_Vikendice]);
		VikendicaLP(PLAYER_ENUM[playerid][pPosedovanje_Vikendice]);
	}
}
else {
	GRESKA(playerid, "Vikendica koja je bila u vasem vlasnistvu je prodata, kljuc vam je skinut!");
	GRESKA(playerid, "Ukoliko mislite da je ovo greska ili zelite da znate razlog prodaje vase vikendice obratite se ADMINU!");
	GRESKA(playerid, "Takodje je moguce da vam je vikendica prodata zbog neaktivnosti!");
	PLAYER_ENUM[playerid][pPosedovanje_Vikendice] = -1; SacuvajKorisnike(playerid);
}
Poslednja Izmena: Maj 06, 2020, 00:24:13 PRE PODNE od Vuzimir

My Bike KTM 450 SXF 2008