Question

Можно-ли как-нибудь сделать что-бы настоящее время показывалось на TD? Просто создаю TD телефон и мне нужно что-бы когда я нажимал на alt у меня высвечивался телефон и показывалось время на этих TD. Всё я сделал, но как сделать время?

Share this post


Link to post

22 answers to this question

  • 0

@Lalka001 нужно чтобы время обновлялось или чтобы показывало только время, которое было в момент открытия телефона? 

Share this post


Link to post
  • 0
1 час назад, DEST сказал:

@Lalka001 нужно чтобы время обновлялось или чтобы показывало только время, которое было в момент открытия телефона? 

Что-бы обновлялось, если такое невозможно то только то которое было в момент открытия. Но надо что-бы обновлялось 

Share this post


Link to post
  • 0

@Lalka001 тогда нужно создать таймер при открытии текстдрава и через форматирование строки изменять время.

Пример

К глобальным переменным:

new TimeUpdate[MAX_PLAYERS]; 
// действие: игрок открыл текстдрав. 
TimeUpdate[playerid] = SetTimerEx("UpdateTime", 60*1000, false, "i", playerid); 

ко всем пабликам:

forward UpdateTime(playerid); 
public UpdateTime(playerid) 
{
  new str[6], hour, minute; 
  gettime(hour, minute); 
  format(str, sizeof str, "%d:%d", hour, minute); 
  TextDrawSetString(переменная_текстдрава, str); 
  return true; 
}

Туда, где игрок закрывает текстдрав: 
 

KillTimer(TimeUpdate[playerid]); 

 

Share this post


Link to post
  • 0

Извиняюсь что поторопился с ответом

Но у меня 1 ошибки и 1 варнинг:

1 Ошибка: (532)error 021: symbol already defined: "UpdateTime"

2 Варнинг: (539)warning 209: function "UpdateTime" should return a value

Share this post


Link to post
  • 0

@Lalka001 замените название на любое другое

Share this post


Link to post
  • 0

Заменил на своё, ошибок нет, но всё равно не настоящее время.

Может что-то не так? Просто это TD обычный(текст) и я ввёл просто для красоты когда создавал "12:00".

 

12 часов назад, DEST сказал:

@Lalka001 замените название на любое другое

 

Edited by Lalka001
Причина: Забыл процетировать

Share this post


Link to post
  • 0

Кинь уже готовый вариант, который получился

Share this post


Link to post
  • 0

тебе время будет показывать такое , какое стоит на хостинге -_-

Share this post


Link to post
  • 0
5 часов назад, DEST сказал:

Кинь уже готовый вариант, который получился

new TimeUpdateTD[MAX_PLAYERS];

public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
	new string[500];
	if(clickedid == Menu[3]) // ВКЛ экрана телефона
	{
 		TimeUpdateTD[playerid] = SetTimerEx("UpdateTimeTD", 60*1000, false, "i", playerid);
	    TextDrawShowForPlayer(playerid, Menu[2]);
 	    TextDrawShowForPlayer(playerid, Menu[4]);
  	    TextDrawShowForPlayer(playerid, Menu[5]);
  	    TextDrawShowForPlayer(playerid, Menu[6]);
  	    TextDrawShowForPlayer(playerid, Menu[7]);
 	    TextDrawShowForPlayer(playerid, Menu[8]);
  	    TextDrawShowForPlayer(playerid, Menu[9]);
	}
	if(clickedid == Menu[10]) // Убрать телефон
	{
	    TextDrawHideForPlayer(playerid, Menu[0]);
 	    TextDrawHideForPlayer(playerid, Menu[1]);
 	    TextDrawHideForPlayer(playerid, Menu[2]);
  	    TextDrawHideForPlayer(playerid, Menu[3]);
  	    TextDrawHideForPlayer(playerid, Menu[4]);
  	    TextDrawHideForPlayer(playerid, Menu[5]);
 	    TextDrawHideForPlayer(playerid, Menu[6]);
 	    TextDrawHideForPlayer(playerid, Menu[7]);
 	    TextDrawHideForPlayer(playerid, Menu[8]);
  	    TextDrawHideForPlayer(playerid, Menu[9]);
  	    TextDrawHideForPlayer(playerid, Menu[10]);
  	    KillTimer(TimeUpdateTD[playerid]);
	    CancelSelectTextDraw(playerid);
	}
	return 0;
}

forward UpdateTimeTD(playerid);
public UpdateTimeTD(playerid)
{
		new str[6], hour, minute;
		gettime(hour, minute);
		format(str, sizeof str, "%d:%d", hour, minute);
		TextDrawSetString(Menu[4], str);
		return true;
}

 

Share this post


Link to post
  • 0
4 минуты назад, Lalka001 сказал:

TextDrawShowForPlayer(playerid, Menu[4]);

вот эту строку убери из функции показа телефона

Share this post


Link to post
  • 0
1 час назад, DEST сказал:

вот эту строку убери из функции показа телефона

Убрал, но проверить немогу, т.к у меня другая проблема https://pawno-rus.ru/topic/2567-konsol-sscanf-error/#comment-8997

И ты будто 1 здесь отвечаешь, ты топ

Share this post


Link to post
  • 0
1 час назад, DEST сказал:

вот эту строку убери из функции показа телефона

Теперь его совсем нету

Share this post


Link to post
  • 0
55 минут назад, Lalka001 сказал:

TextDrawSetString(Menu[4], str);

и после этой строки добавить еще: 

TextDrawHideForPlayer(playerid, Menu[4]); 
TextDrawShowForPlayer(playerid, Menu[4]); 

А ту строку, которую убирали раннее, можете вернуть на место. 

Share this post


Link to post
  • 0
1 час назад, DEST сказал:

и после этой строки добавить еще: 


TextDrawHideForPlayer(playerid, Menu[4]); 
TextDrawShowForPlayer(playerid, Menu[4]); 

А ту строку, которую убирали раннее, можете вернуть на место. 

Ничего не изменяется, так-же остаётся TD 12:00

Share this post


Link to post
  • 0
1 час назад, Lalka001 сказал:

TimeUpdateTD[playerid] = SetTimerEx("UpdateTimeTD", 60*1000, false, "i", playerid);

в этой строке false поменяйте на true. Также сразу в паблик таймера киньте перед return true такой код: 

printf("%s", str);

Если не получится снова, киньте логи. Если получиться, этот код из паблика таймера удалите. 

Share this post


Link to post
  • 0
1 час назад, DEST сказал:

в этой строке false поменяйте на true. Также сразу в паблик таймера киньте перед return true такой код: 

printf("%s", str);

Если не получится снова, киньте логи. Если получиться, этот код из паблика таймера удалите. 

Не получается, мне кинуть коды? Или логи с samp-server.exe

Share this post


Link to post
  • 0
В 21.05.2018 в 20:18, DEST сказал:

@Lalka001 логи (server_log.txt)

SA-MP Dedicated Server
----------------------
v0.3.7-R2, (C)2005-2015 SA-MP Team

[00:54:57] filterscripts = ""  (string)
[00:54:57] 
[00:54:57] Server Plugins
[00:54:57] --------------
[00:54:57]  Loading plugin: dc_cmd
[00:54:57]   Daniel's CMD plugin v2.8
[00:54:57]     (c) 2014 Daniel_Cortez
[00:54:57]     www.pro-pawn.ru
[00:54:57]   Loaded.
[00:54:57]  Loading plugin: sscanf
[00:54:57] 

[00:54:57]  ===============================

[00:54:57]       sscanf plugin loaded.     

[00:54:57]          Version:  2.8.1        

[00:54:57]    (c) 2012 Alex "Y_Less" Cole  

[00:54:57]  ===============================

[00:54:57]   Loaded.
[00:54:57]  Loading plugin: streamer
[00:54:57] 

*** Streamer Plugin v2.7.4 by Incognito loaded ***

[00:54:57]   Loaded.
[00:54:57]  Loading plugin: mysql
[00:54:57]  >> plugin.mysql: R39-2 successfully loaded.
[00:54:57]   Loaded.
[00:54:57]  Loaded 4 plugins.

[00:54:57] 
[00:54:57] Filterscripts
[00:54:57] ---------------
[00:54:57]   Loaded 0 filterscripts.

[00:54:57] Number of vehicle models: 0
[00:55:29] [connection] 127.0.0.1:61812 requests connection cookie.
[00:55:30] [connection] incoming connection: 127.0.0.1:61812 id: 0
[00:55:30] [join] Danial_Torreto has joined the server (0:127.0.0.1)
[00:58:24] [part] Danial_Torreto has left the server (0:1)

 

Share this post


Link to post
  • 0
60*1000 не многовато для таймера? (раз в минуту токо обновляться будет) 

измени на 6*1000 (раз в сек )

также меняй 

format(str, sizeof str, "%d:%d", hour, minute);

на:

format(str, sizeof str, "%02d:%02d", hour, minute);

 

Edited by MuhammadPawn

Share this post


Link to post
  • 0
3 часа назад, MuhammadPawn сказал:

60*1000 не многовато для таймера? (раз в минуту токо обновляться будет) 

измени на 6*1000 (раз в сек )

также меняй 


format(str, sizeof str, "%d:%d", hour, minute);

на:


format(str, sizeof str, "%02d:%02d", hour, minute);

 

Всё равно реальное время не показывает, только 12:00, как и было

Share this post


Link to post
  • 0

@Lalka001 хоть б сам попробовал с таймером пойграться... ставь 1000 за место 6*1000  и в таймере за место false ставь true

Share this post


Link to post
  • 0

@Lalka001 вы хоть ждете немного, таймер-то раз в минуту по моему коду должен работать. Подождите минуту, потому что таймер ни разу не сработал, судя по логам. 

Share this post


Link to post
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • August_Rothschild
      By August_Rothschild
      Всем привет , как заменять анимации в игре ? Имеется ввиду анимации танцев , как прочесть файлы с анимациями или как заменять определенную анимацию