Форум Pawn.Wiki - Воплоти мечту в реальность!: ЭкСпи exp - Форум Pawn.Wiki - Воплоти мечту в реальность!

Перейти к содержимому

Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

[ Pawn ]
ЭкСпи exp

#1
Пользователь офлайн   Under 

  • Пользователь
  • Вставить ник
  • Раскрыть информацию
Ку, у меня уже с самого создание мода сделана система exp и повышение опыта, делал мод у Леон Галанте, посмотрел 8 серий и решил уже делать свои идеи и фишки. И когда выводится текст: зарплата, то ниче не прибавляется, хотя должно:
new expmin = 4;

stock PayDay(playerid)
{
	SCM(playerid, COLOR_WHITE, "Зарплата");
	GiveExp(playerid, 1);
}


public PlayerLogin(playerid)
{
    new rows;
	cache_get_row_count(rows);
	if(rows)
	{
	    cache_get_value_name_int(0, "id", player_info[playerid][ID]);
	    cache_get_value_name(0, "email", player_info[playerid][EMAIL], 64);
	    cache_get_value_name_int(0, "ref", player_info[playerid][REF]);
	    cache_get_value_name_int(0, "race", player_info[playerid][RACE]);
	    cache_get_value_name_int(0, "age", player_info[playerid][AGE]);
	    cache_get_value_name_int(0, "skin", player_info[playerid][SKIN]);
	    cache_get_value_name(0, "regdata", player_info[playerid][REGDATA], 13);
	    cache_get_value_name(0, "regip", player_info[playerid][REGIP], 16);
	    cache_get_value_name_int(0, "admin", player_info[playerid][ADMIN]);
	    cache_get_value_name_int(0, "money", player_info[playerid][MONEY]);
	    cache_get_value_name_int(0, "lvl", player_info[playerid][LVL]);
	    cache_get_value_name_int(0, "exp", player_info[playerid][EXP]);
	    cache_get_value_name_int(0, "minute", player_info[playerid][MINUTE]);
	    cache_get_value_name(0, "lastip", player_info[playerid][LASTIP], 16);
	    TogglePlayerSpectating(playerid, 0);
	    SetPVarInt(playerid, "Logged", 1);
	    SetSpawnInfo(playerid, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
	    SpawnPlayer(playerid);
	    
	    if(player_info[playerid][ADMIN] > 0) Iter_Add(Admins_ITER, playerid);
	}
	return 1;
}


stock GiveExp(playerid, exp)
{
	player_info[playerid][EXP] += exp;
	new needexp = (player_info[playerid][LVL]+1)*expmin;
	new buffer = player_info[playerid][EXP]-needexp;
	if(player_info[playerid][EXP] >= needexp)
	{
	    player_info[playerid][EXP] = 0;
	    if(buffer > 0) player_info[playerid][EXP] += buffer;
	    player_info[playerid][LVL]++;
	    SCM(playerid, COLOR_WHITE, "Ваш уровень повышен");
	    SetPlayerScore(playerid, player_info[playerid][LVL]);
	}
	static const fmt_query[] = "UPDATE `accounts` SET `lvl` = '%d', `exp` = '%d' WHERE` = `id` = '%d'";
	new query[sizeof(fmt_query)+(-2+9)+(-2+8)];
	format(query, sizeof(query), fmt_query, player_info[playerid][LVL], player_info[playerid][EXP], player_info[playerid][ID]);
	mysql_query(dbHandle, query);
}

0

#2
Пользователь офлайн   Hunter-Killer 

  • Проходимец
  • Вставить ник
  • Раскрыть информацию
А где PayDay вызывается?
0

#3
Пользователь офлайн   Under 

  • Пользователь
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияHunter-Killer (30 августа 2025 - 17:45) писал:

А где PayDay вызывается?

видимо нигде, я все строки скинул где взаимодействован он, максимум еще есть EXP в данных игрока
enum player
{
	ID, // id
	NAME[MAX_PLAYER_NAME], // Имя_Фамилия / Nick_Name
	PASSWORD[24], // Пароль
	EMAIL[64], // Емаил
	REF, // Реферал
	SEX, // Пол
	RACE, // Раса
	AGE, // Возраст
	SKIN, // Скин
	REGDATA[13], // Рег Дата
	REGIP[16], // Рег айпи
	ADMIN, // Админ
	MONEY, // Деньги
	LVL, // Уровень
	EXP, // Опыт
	MINUTE, // Отыгранное время
	LASTIP[16], // Ласт айпи
}

0

#4
Пользователь офлайн   MuthaX 

  • Эксперт
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияUnder (30 августа 2025 - 17:26) писал:

Нажмите сюда, чтобы прочитать это сообщение. [Показать]

Хоть это не решит твоей проблемы, но к подобной загрузке данных предлагаю присмотреться
0

Поделиться темой:


Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей


Яндекс.Метрика