30.12.2012, 14:25
(
Последний раз редактировалось BaubaS; 30.12.2012 в 15:16.
)
I have a little problem with selectable textdraws. For example, there are 3 textdraws:
1. something
2. cool
3. okay
When I set my mouse at okay, it highlights something and cool too.
^ I have set my mouse at third, but it highlighted first and second too.
Code:
Created by using ipleomax td editor.
1. something
2. cool
3. okay
When I set my mouse at okay, it highlights something and cool too.
^ I have set my mouse at third, but it highlighted first and second too.
Code:
pawn Код:
#include <a_samp>
new Text: TD0, Text: TD1, Text: TD2, Text: TD3, Text: TD4, Text: TD5, Text: TD6, Text: TD7;
new bool: shopState[MAX_PLAYERS];
public OnGameModeInit()
{
TD0 = TextDrawCreate(641.375000, 1.500000, "usebox");
TextDrawLetterSize(TD0, 0.000000, 49.396297);
TextDrawTextSize(TD0, -2.000000, 0.000000);
TextDrawAlignment(TD0, 3);
TextDrawColor(TD0, 0);
TextDrawUseBox(TD0, true);
TextDrawBoxColor(TD0, 192);
TextDrawSetShadow(TD0, 0);
TextDrawSetOutline(TD0, 0);
TextDrawFont(TD0, 0);
TD1 = TextDrawCreate(88.125000, 30.916675, "Deagle");
TextDrawLetterSize(TD1, 0.449999, 1.600000);
TextDrawTextSize(TD1, 1329.375000, 55.416728);
TextDrawAlignment(TD1, 2);
TextDrawColor(TD1, -1);
TextDrawSetShadow(TD1, 0);
TextDrawSetOutline(TD1, 0);
TextDrawBackgroundColor(TD1, 51);
TextDrawFont(TD1, 1);
TextDrawSetProportional(TD1, 1);
TextDrawSetSelectable(TD1, true);
TD2 = TextDrawCreate(215.750000, 1.500000, "usebox");
TextDrawLetterSize(TD2, 0.000000, 49.201850);
TextDrawTextSize(TD2, 207.375000, 0.000000);
TextDrawAlignment(TD2, 1);
TextDrawColor(TD2, 0);
TextDrawUseBox(TD2, true);
TextDrawBoxColor(TD2, -14803202);
TextDrawSetShadow(TD2, 0);
TextDrawSetOutline(TD2, 0);
TextDrawFont(TD2, 0);
TextDrawSetProportional(TD2, 1);
TD3 = TextDrawCreate(298.750000, 31.500001, "Deagle costs $750");
TextDrawLetterSize(TD3, 0.449999, 1.600000);
TextDrawAlignment(TD3, 1);
TextDrawColor(TD3, -1);
TextDrawSetShadow(TD3, 0);
TextDrawSetOutline(TD3, 255);
TextDrawBackgroundColor(TD3, 51);
TextDrawFont(TD3, 1);
TextDrawSetProportional(TD3, 1);
TD4 = TextDrawCreate(63.125000, 55.999988, "USP");
TextDrawLetterSize(TD4, 0.449999, 1.600000);
TextDrawAlignment(TD4, 1);
TextDrawColor(TD4, -1);
TextDrawSetShadow(TD4, 0);
TextDrawSetOutline(TD4, 1);
TextDrawBackgroundColor(TD4, 51);
TextDrawFont(TD4, 1);
TextDrawSetProportional(TD4, 1);
TextDrawSetSelectable(TD4, true);
TD5 = TextDrawCreate(297.500000, 58.916690, "USP costs $450");
TextDrawLetterSize(TD5, 0.449999, 1.600000);
TextDrawAlignment(TD5, 1);
TextDrawColor(TD5, -1);
TextDrawSetShadow(TD5, 0);
TextDrawSetOutline(TD5, 1);
TextDrawBackgroundColor(TD5, 51);
TextDrawFont(TD5, 1);
TextDrawSetProportional(TD5, 1);
TD6 = TextDrawCreate(62.500000, 81.666687, "AK-47");
TextDrawLetterSize(TD6, 0.449999, 1.600000);
TextDrawAlignment(TD6, 1);
TextDrawColor(TD6, -1);
TextDrawSetShadow(TD6, 0);
TextDrawSetOutline(TD6, 1);
TextDrawBackgroundColor(TD6, 51);
TextDrawFont(TD6, 1);
TextDrawSetProportional(TD6, 1);
TextDrawSetSelectable(TD6, true);
TD7 = TextDrawCreate(296.666595, 82.833267, "AK-47 costs $2500");
TextDrawLetterSize(TD7, 0.449999, 1.600000);
TextDrawAlignment(TD7, 1);
TextDrawColor(TD7, -1);
TextDrawSetShadow(TD7, 0);
TextDrawSetOutline(TD7, 1);
TextDrawBackgroundColor(TD7, 51);
TextDrawFont(TD7, 1);
TextDrawSetProportional(TD7, 1);
return true;
}
public OnPlayerConnect(playerid)
{
shopState[playerid] = false;
return true;
}
public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
if(_:clickedid != INVALID_TEXT_DRAW)
{
if(clickedid == TD1)
{
if (GetPlayerMoney(playerid) < 750)
return SendClientMessage(playerid, 0x9EC73DFF, "[server]: You dont have enough money! ({ff0000}$750{9ec73d})");
GivePlayerWeapon(playerid, 24, 7);
GivePlayerMoney (playerid, - 750);
}
if(clickedid == TD4)
{
if (GetPlayerMoney(playerid) < 450)
return SendClientMessage(playerid, 0x9EC73DFF, "[server]: You dont have enough money! ({ff0000}$450{9ec73d})");
GivePlayerWeapon(playerid, 22, 12);
GivePlayerMoney (playerid, - 450);
}
if(clickedid == TD7)
{
if (GetPlayerMoney(playerid) < 2500)
return SendClientMessage(playerid, 0x9EC73DFF, "[server]: You dont have enough money! ({ff0000}$2500{9ec73d})");
GivePlayerWeapon(playerid, 30, 30);
GivePlayerMoney (playerid, - 2500);
}
}
return (true);
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if (newkeys & KEY_NO)
{
if (!shopState[playerid])
{
TextDrawShowForPlayer(playerid, TD0);
TextDrawShowForPlayer(playerid, TD1);
TextDrawShowForPlayer(playerid, TD2);
TextDrawShowForPlayer(playerid, TD3);
TextDrawShowForPlayer(playerid, TD4);
TextDrawShowForPlayer(playerid, TD5);
TextDrawShowForPlayer(playerid, TD6);
TextDrawShowForPlayer(playerid, TD7);
SelectTextDraw(playerid, 0xFF0000FF);
shopState[playerid] = true;
}
else
{
TextDrawHideForPlayer(playerid, TD0);
TextDrawHideForPlayer(playerid, TD1);
TextDrawHideForPlayer(playerid, TD2);
TextDrawHideForPlayer(playerid, TD3);
TextDrawHideForPlayer(playerid, TD4);
TextDrawHideForPlayer(playerid, TD5);
TextDrawHideForPlayer(playerid, TD6);
TextDrawHideForPlayer(playerid, TD7);
CancelSelectTextDraw(playerid);
shopState[playerid] = false;
}
}
return (true);
}