Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
K-911 - 24.08.2010
У меня на сервере при коннекте высвечиваеться TextDraw с информацией, как сделать, чтоб он исчез через 10 секунд после появления?
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
Xotab - 24.08.2010
SetTimer тебе в помощь!
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
K-911 - 24.08.2010
А можно как-то, чтоб он плавно исчезал, я так на многих серверах видел
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
Xotab - 24.08.2010
и снова тебе поможет SetTimer =\
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
K-911 - 24.08.2010
Каким образом? Как сделать плавное исчезание с помощью SetTimer?
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
ZaR - 24.08.2010
пздц. не занимайся тогда скриптингом, если не можешь даже продумать простейший алгоритм или иди на другой сайт, а тут как бэ не дают полного кода, а намёк сделали.
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
K-911 - 24.08.2010
ZaR, я это сказал к тому, что невозможно с помощью SetTimer плавное исчезание сделать! Оно работает от какой-то другой функции и я хочу узнать, какой, а SetTimer может сделать только резкое исчезание!
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
[Saint] - 24.08.2010
через 10 сек, меняешь цвет на более светлый каждую след. секунду, а потом и вовсе скрыть с экрана.
неужели до этого так трудно додуматься?
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
K-911 - 24.08.2010
Ты думаешь так все делают? Есть спец. функция, она делает исчезание, ане осветление, темболее в TextDraw испльзуеться где-то 5-6 цветов и там нет светлых цветов! Мне эта функция нужна, потому, что SetTimer иногда глючит, и очень часто убирает текст при спавне.
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
K-911 - 24.08.2010
ZaR, не умничай, ты как я вижу тоже не всё в павно знаешь, у меня давно когда-то была такая функция, но после переустановки винды удалился мод, а я тогда ещё в павно плохо разбирался, так что думал мне кто-то напомнит, а здесь вместо этого ржут... Если ты незнаешь, этот форум создан для того, чтоб задавали вопросы, а знающие на него ответ, помогали, ане намекали и ржали!
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
KPECTok - 24.08.2010
SetTimer
запускаешь паблик в котором цвет посветлее.. и в этом же паблике новый SetTimer2
в след паблике SetTimer2 еще светлее..
в самом конце удаляешь.
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
gradient - 25.08.2010
А нельзя попробовать замутить что-то вроде:
Код:
Public TextDrawInv(textdrawid)
{
TextSec--;
if(TextSec==8) Осветление текстдрава;
if(TextSec==4) Более Осветление текстдрава;
if(TextSec==0) Полнре исчезновение текстдрава;
TextTimer = SetTimer("TextDrawInv",1000,0);
return 1;
}
P.S Код набрасал просто прямо тут, для примера, надеюсь он чем-то поможет
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
Stepashka - 25.08.2010
Я делал эффект затемнения экрана, правильно говорять, нужен таймер, по нему плавно изменяешь альфа составляющую цвета у TextDraw, т.е. меняешь прозрачность, а когда она 0 убираешь текст, все.
Единственное что тут подсказали неправильно это время, тут нужна апперировать значениями милисекунд.
У меня за это отвечал вот такой паблик:
pawn Код:
new Text:BlackScreen[MAX_PLAYERS],BlackScreenTimer[MAX_PLAYERS];
forward OnPlayerBlackScreen(playerid,bool:type,aaa,speed);
public OnPlayerBlackScreen(playerid,bool:type,aaa,speed)
{
if(BlackScreenTimer[playerid] != -1)
{
KillTimer(BlackScreenTimer[playerid]);
BlackScreenTimer[playerid] = -1;
}
if(type)
{
if(aaa == 0)
{
BlackScreen[playerid] = TextDrawCreate(0.0, 0.0, "_");
TextDrawFont(BlackScreen[playerid], 1);
TextDrawLetterSize(BlackScreen[playerid], 0.0, 50.0);
TextDrawUseBox(BlackScreen[playerid], true);
TextDrawColor(BlackScreen[playerid], 0);
TextDrawBoxColor(BlackScreen[playerid], aaa);
TextDrawShowForPlayer(playerid,BlackScreen[playerid]);
aaa += 1;
}
else if(aaa < 255)
{
TextDrawHideForPlayer(playerid,BlackScreen[playerid]);
TextDrawBoxColor(BlackScreen[playerid], aaa);
TextDrawShowForPlayer(playerid,BlackScreen[playerid]);
aaa += 1;
}
else if(254 < aaa < 265)
{
aaa += 1;
}
else if(aaa == 265)
{
type = false;
aaa = 255;
return 1;
}
BlackScreenTimer[playerid] = SetTimerEx("OnPlayerBlackScreen",speed,0,"dddd",playerid,type,aaa,speed);
}
else
{
if(aaa > 0)
{
TextDrawHideForPlayer(playerid,BlackScreen[playerid]);
TextDrawBoxColor(BlackScreen[playerid], aaa);
TextDrawShowForPlayer(playerid,BlackScreen[playerid]);
aaa -= 1;
BlackScreenTimer[playerid] = SetTimerEx("OnPlayerBlackScreen",speed,0,"dddd",playerid,type,aaa,speed);
}
else if(aaa <= 0)
{
TextDrawHideForPlayer(playerid,BlackScreen[playerid]);
TextDrawDestroy(BlackScreen[playerid]);
}
}
return 1;
}
атрибуты:
playerid - кому показывать
bool:type - первый запуск true или изменение параметров false
aaa - стартовый цвет (0 - замтемнение, 255 наоборот с церного на полное исчезновение)
speed - скорость
чтобы скрыть экран я вызывал его со следующими параметрами
OnPlayerBlackScreen(playerid,true,0,3);
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
azen - 25.08.2010
хахах... Ну парень конешь дал газу... Функция, х3 какая, но точно не таймер xDDD
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
Stepashka - 25.08.2010
Quote:
Originally Posted by azen
хахах... Ну парень конешь дал газу... Функция, х3 какая, но точно не таймер xDDD
|
вообще-то без таймера не обойтись.
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
K-911 - 25.08.2010
Quote:
Originally Posted by Stepashka
вообще-то без таймера не обойтись.
|
Да, но вот, что мне нужно было! Не замена цвета на светлее, как думали некоторые и ржали, а исчезание, я сейчас об этом:
Quote:
Originally Posted by Stepashka
Public TextDrawInv(textdrawid)
{
TextSec--;
if(TextSec== Осветление текстдрава;
if(TextSec==4) Более Осветление текстдрава;
if(TextSec==0) Полнре исчезновение текстдрава;
TextTimer = SetTimer("TextDrawInv",1000,0);
return 1;
}
|
А про SetTimer не спорю, без него тоже некак.
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
f0rtex - 25.08.2010
K-911, Получается что не ты делаешь твой мод, а скриптеры русского форума
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
[CripZ]SERCH - 25.08.2010
Да лан тебе, это всего лишь просьба человека , просто она большая
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
azen - 25.08.2010
ага, и обычно за такие просьбы деньги берут
Re: Как сделать, чтоб TextDraw исчезал через 10 сек. после коннекта? -
K-911 - 25.08.2010
f0rtex, мой мод не скриптеры русского форума делают, он у меня сам по себе большой, а сюда я задаю вопросы, если с чем-то возникает проблема и я её не могу решить, или мне нужен какой-то важный скрипт, которого не могу найти, этот форум для того и сделан, чтоб знатоки помогали решить проблему, а если кто-то не хочет помогать, это уже его право, это в конце к концов форум, а за деньги, это когда уже в личном обращении просишь помощь