Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Не работает TextDraw! Точнее не обновляется, подробнее внутри. Помоги чайнику! :)

Статус
В этой теме нельзя размещать новые ответы.

KakbeYura

Умник
Вообщем, скачал мод из паблика под основу AG 7.5 =/ Сам нуб, особо ничего не умею делать, только ищу всякие скрипты и делаю карту в MTA. А мечтаю нормальный сервер открыть :)

Хочу создать 2 текстдрава, где 1 по ДМ, а второй по Дрифту. Первый уже есть, всё норм, а вот с вторым проблемы :(. Я поставил вместо GetPlayerScore GetPlayerMoney, так как в скрипте на деньги идет. Ну и хочу простенький текстдрав создать.

Проблема такова: Когда только захожу в мод через 127.0.0.1 пишет: Level: 0, ранга нету, хотя должен, и SCR: 0/10. А должно быть Level: 1 Rank: Trainee SCR: 1234556/8000 (я не поставил ограничение, так как не доделал уровни). Я умираю и о чудо: он работает! Но не обновляется, так и сидит то значение когда умер, пока опять не умру, тогда значение опять обновляется. Тоесть - если заработал денег, то в SCR они не прибавляються, а только когда умру.

Скрины:


Код вначале
PHP:
new Text:LVL[MAX_PLAYERS],Text:LVL2[MAX_PLAYERS];
new Text:LVL3[MAX_PLAYERS],Text:LVL4[MAX_PLAYERS];
new Level[MAX_PLAYERS];
new Level2[MAX_PLAYERS];
new Text:WEB[MAX_PLAYERS];
new Text:WEB2[MAX_PLAYERS];
public OnPlayerConnect(playerid)
PHP:
    LVL4[playerid] = TextDrawCreate(498.000000, 186.000000, "SCR: 0/10");//система уровней за убийста 2 элемент
	TextDrawBackgroundColor(LVL4[playerid], 0x00000040);
	TextDrawFont(LVL4[playerid], 1);
	TextDrawLetterSize(LVL4[playerid], 0.4,1.6);
	TextDrawColor(LVL4[playerid], 0xFFFFFFFF);
	TextDrawSetOutline(LVL4[playerid], 1);
	TextDrawSetProportional(LVL4[playerid], 1);

	LVL3[playerid] = TextDrawCreate(498.000000, 156.000000, "Level: 0");//система уровней за убийста 1 элемент
	TextDrawBackgroundColor(LVL3[playerid], 0x00000040);
	TextDrawFont(LVL3[playerid], 1);
	TextDrawLetterSize(LVL3[playerid], 0.4,1.6);
	TextDrawColor(LVL3[playerid], 0xFFFFFFFF);
	TextDrawSetOutline(LVL3[playerid], 1);
	TextDrawSetProportional(LVL3[playerid], 1);

    LVL2[playerid] = TextDrawCreate(498.000000, 126.000000, "SCR: 0/10");//система уровней за убийста 2 элемент
	TextDrawBackgroundColor(LVL2[playerid], 0x00000040);
	TextDrawFont(LVL2[playerid], 1);
	TextDrawLetterSize(LVL2[playerid], 0.4,1.6);
	TextDrawColor(LVL2[playerid], 0xFFFFFFFF);
	TextDrawSetOutline(LVL2[playerid], 1);
	TextDrawSetProportional(LVL2[playerid], 1);

	LVL[playerid] = TextDrawCreate(498.000000, 96.000000, "Level: 0");//система уровней за убийста 1 элемент
	TextDrawBackgroundColor(LVL[playerid], 0x00000040);
	TextDrawFont(LVL[playerid], 1);
	TextDrawLetterSize(LVL[playerid], 0.4,1.6);
	TextDrawColor(LVL[playerid], 0xFFFFFFFF);
	TextDrawSetOutline(LVL[playerid], 1);
	TextDrawSetProportional(LVL[playerid], 1);

    WEB[playerid] = TextDrawCreate(428.000000, 5.000000, "vk.com/kill.and.drift");//сайт над баром оружия
	TextDrawBackgroundColor(WEB[playerid], 0xFFFFFF40);
	TextDrawFont(WEB[playerid], 3);
	TextDrawLetterSize(WEB[playerid], 0.5,2);
	TextDrawColor(WEB[playerid], 0x000000FF);
	TextDrawSetOutline(WEB[playerid], 1);
	TextDrawSetProportional(WEB[playerid], 1);

	WEB2[playerid] = TextDrawCreate(385.000000, 4.000000, "vk.com/kill.and.drift");//сайт над баром оружия
	TextDrawBackgroundColor(WEB2[playerid], 0xFFFFFF40);
	TextDrawFont(WEB2[playerid], 3);
	TextDrawLetterSize(WEB2[playerid], 0.5,2);
	TextDrawColor(WEB2[playerid], 0x000000FF);
	TextDrawSetOutline(WEB2[playerid], 1);
	TextDrawSetProportional(WEB2[playerid], 1);
public OnPlayerDisconnect(playerid)
PHP:
    TextDrawHideForPlayer(playerid,LVL[playerid]);
	TextDrawHideForPlayer(playerid,LVL2[playerid]);
    TextDrawHideForPlayer(playerid,LVL3[playerid]);
	TextDrawHideForPlayer(playerid,LVL4[playerid]);
	TextDrawHideForPlayer(playerid,WEB[playerid]);
	TextDrawHideForPlayer(playerid,WEB2[playerid]);
	TextDrawDestroy(LVL[playerid]);
	TextDrawDestroy(LVL2[playerid]);
	TextDrawDestroy(LVL3[playerid]);
	TextDrawDestroy(LVL4[playerid]);
	TextDrawDestroy(WEB[playerid]);
    TextDrawDestroy(WEB2[playerid]);
Ну тут уже было не обязательно но я вставил
public OnPlayerCommandText(playerid, cmdtext[])
PHP:
 	if(strcmp(cmd, "/hidetext", true) == 0) {
    TextDrawHideForPlayer(playerid,LVL[playerid]);
	TextDrawHideForPlayer(playerid,LVL2[playerid]);
    TextDrawHideForPlayer(playerid,LVL3[playerid]);
	TextDrawHideForPlayer(playerid,LVL4[playerid]);
	TextDrawHideForPlayer(playerid,WEB[playerid]);
    return 1;
    }
    if(strcmp(cmd, "/showtext", true) == 0) {
    TextDrawShowForPlayer(playerid,LVL[playerid]);
	TextDrawShowForPlayer(playerid,LVL2[playerid]);
    TextDrawShowForPlayer(playerid,LVL3[playerid]);
	TextDrawShowForPlayer(playerid,LVL4[playerid]);
	TextDrawShowForPlayer(playerid,WEB[playerid]);
    return 1;
    }
В public OnPlayerSpawn(playerid) сидят уровни подобные этому
PHP:
    if(GetPlayerScore(playerid) >= 0 && GetPlayerScore(playerid) <= 10)
	{
	    new string_T1[128],string_T2[128];
	    Level[playerid] = 1;
	    format(string_T1,sizeof(string_T1),"Level: %d~n~Rank: Trainee",Level[playerid]);
		TextDrawSetString(LVL[playerid],string_T1);
		format(string_T2,sizeof(string_T2),"SCR: %d/10",GetPlayerScore(playerid));
		TextDrawSetString(LVL2[playerid],string_T2);
		GivePlayerWeapon(playerid,2,0);
		GivePlayerWeapon(playerid,24,200);
		GivePlayerWeapon(playerid,25,50);
		GivePlayerWeapon(playerid,29,200);
		GivePlayerWeapon(playerid,30,400);
        new string[256];
        format(string, sizeof(string), " * Сейчас у тебя Level: 1, EXP: 3, Rank: Trainee, SCR: %d и Skill: 1", GetPlayerScore(playerid));
     	SendClientMessage(playerid, 0x43B71CAA, string);
     	SetPlayerSkillLevel(playerid, WEAPONSKILL_PISTOL, 1000);
     	SetPlayerSkillLevel(playerid, WEAPONSKILL_PISTOL_SILENCED, 1000);
     	SetPlayerSkillLevel(playerid, WEAPONSKILL_DESERT_EAGLE, 1000);
     	SetPlayerSkillLevel(playerid, WEAPONSKILL_SHOTGUN, 1000);
     	SetPlayerSkillLevel(playerid, WEAPONSKILL_SAWNOFF_SHOTGUN, 1000);
     	SetPlayerSkillLevel(playerid, WEAPONSKILL_SPAS12_SHOTGUN, 1000);
     	SetPlayerSkillLevel(playerid, WEAPONSKILL_MICRO_UZI, 1000);
     	SetPlayerSkillLevel(playerid, WEAPONSKILL_MP5, 1000);
     	SetPlayerSkillLevel(playerid, WEAPONSKILL_AK47, 1000);
     	SetPlayerSkillLevel(playerid, WEAPONSKILL_M4, 1000);
     	SetPlayerSkillLevel(playerid, WEAPONSKILL_SNIPERRIFLE, 1000);
Ну я и вниху этих вставил эти
PHP:
	if(GetPlayerMoney(playerid) <= 3000)
    {
	    new string_T1[128],string_T2[128];
	    Level2[playerid] = 1;
	    format(string_T1,sizeof(string_T1),"DFT-Level: %d ~n~Rank: ",Level2[playerid]);
		TextDrawSetString(LVL3[playerid],string_T1);
		format(string_T2,sizeof(string_T2),"SCR: %d/3000",GetPlayerMoney(playerid));
		TextDrawSetString(LVL4[playerid],string_T2);
        new string[256];
        format(string, sizeof(string), "{42BC23}Твоя ИнФа: {9EDD28}Сейчас у тебя Level: 1, Rank: , SCR: %d", GetPlayerMoney(playerid));
     	SendClientMessage(playerid, 0xFF8000AA, string);
	}

	if(GetPlayerMoney(playerid) > 3000 && GetPlayerMoney(playerid) <= 8000000000)
    {
	    new string_T1[128],string_T2[128];
	    Level2[playerid] = 2;
	    format(string_T1,sizeof(string_T1),"DFT-Level: %d ~n~Rank: ",Level2[playerid]);
		TextDrawSetString(LVL3[playerid],string_T1);
		format(string_T2,sizeof(string_T2),"SCR: %d~n~/8000",GetPlayerMoney(playerid));
		TextDrawSetString(LVL4[playerid],string_T2);
        new string[256];
        format(string, sizeof(string), "{42BC23}Твоя ИнФа: {9EDD28}Сейчас у тебя Level: 2, Rank: , SCR: %d", GetPlayerMoney(playerid));
     	SendClientMessage(playerid, 0xFF8000AA, string);
	}
Ещё ниже в этом паблике
PHP:
	TextDrawHideForPlayer(playerid,LVL[playerid]);
	TextDrawHideForPlayer(playerid,LVL2[playerid]);
	TextDrawShowForPlayer(playerid,LVL[playerid]);
	TextDrawShowForPlayer(playerid,LVL2[playerid]);
	TextDrawHideForPlayer(playerid,LVL3[playerid]);
	TextDrawHideForPlayer(playerid,LVL4[playerid]);
	TextDrawShowForPlayer(playerid,LVL3[playerid]);
	TextDrawShowForPlayer(playerid,LVL4[playerid]);
	TextDrawShowForPlayer(playerid,WEB[playerid]);
public OnPlayerDeath(playerid, killerid, reason)
PHP:
 if(GetPlayerMoney(playerid) >= 0 && GetPlayerMoney(playerid) <= 3000)
	{
	    new string_T1[128],string_T2[128];
	    Level2[playerid] = 1;
	    format(string_T1,sizeof(string_T1),"Level: %d~n~Rank: Trainee",Level2[playerid]);
		TextDrawSetString(LVL3[playerid],string_T1);
		format(string_T2,sizeof(string_T2),"SCR: %d/3000",GetPlayerMoney(playerid));
		TextDrawSetString(LVL4[playerid],string_T2);

	}
	
 if(GetPlayerMoney(playerid) >= 3000 && GetPlayerMoney(playerid) <= 80000000)
	{
	    new string_T1[128],string_T2[128];
	    Level2[playerid] = 2;
	    format(string_T1,sizeof(string_T1),"Level: %d~n~Rank: Senior Trainee",Level2[playerid]);
		TextDrawSetString(LVL3[playerid],string_T1);
		format(string_T2,sizeof(string_T2),"SCR: %d~n~/8000",GetPlayerMoney(playerid));
		TextDrawSetString(LVL4[playerid],string_T2);

	}
С кодом всё. Вот скрины






---------- Post added at 14:48 ---------- Previous post was at 13:37 ----------

Блин. Апну.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу