Na'Vi 57 Опубликовано 29 января, 2017 Помогите сделать вот такие часики Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
hteppl 214 Опубликовано 29 января, 2017 http://cr-mp.ru/forum/topic/8237-sozdanie-krasivykh-chasov-pri-pomoschi-tekstdrava/?hl=часы Цвет изменишь сам. TextDrawColor(Clock, 0x33AA33AA); Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Web 414 Опубликовано 29 января, 2017 (изменено) В том уроке что-то не так, были жалобы. Можно использовать FS который идет из коробки с сервером - gl_realtime Правда не помню, идет ли он с крмп сервером в комплекте. Помню, что с самп сервером - идет. Изменено 29 января, 2017 пользователем Веб Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
vsergeenko 197 Опубликовано 29 января, 2017 TogglePlayerClock? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Web 414 Опубликовано 29 января, 2017 Врятли, смахивает на gl_realtime Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Na'Vi 57 Опубликовано 29 января, 2017 Я так понимаю у меня есть часы текстовые просто нужно тексдрав создать и поместить его и добавить функицю так ведь? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Na'Vi 57 Опубликовано 29 января, 2017 (изменено) Вот взял паблик помогите перевести для CRMP public Clock(playerid) { new string[256]; new hour, minute, second; gettime(hour,minute,second); if(hour < 10 && minute < 10) { format(string, sizeof(string), "0%d:0%d", hour, minute); } else if(hour < 10 && minute > 9) { format(string, sizeof(string), "0%d:%d", hour, minute); } else if(hour > 9 && minute < 10) { format(string, sizeof(string), "%d:0%d", hour, minute); } else { format(string, sizeof(string), "%d:%d", hour, minute); } TextDrawSetString(Text:Clock, string); SetWorldTime(hour); } Вот такие ошибки лезут (598) : warning 235: public function lacks forward declaration (symbol "Clock") (619) : error 076: syntax error in the expression, or invalid function call Изменено 29 января, 2017 пользователем Na'Vi Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
hteppl 214 Опубликовано 29 января, 2017 forward Clock(); public Clock(playerid) { new string[256]; new hour, minute, second; gettime(hour,minute,second); if(hour < 10 && minute < 10) { format(string, sizeof(string), "0%d:0%d", hour, minute); } else if(hour < 10 && minute > 9) { format(string, sizeof(string), "0%d:%d", hour, minute); } else if(hour > 9 && minute < 10) { format(string, sizeof(string), "%d:0%d", hour, minute); } else { format(string, sizeof(string), "%d:%d", hour, minute); } TextDrawSetString(Text:Clock, string); SetWorldTime(hour); } Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Na'Vi 57 Опубликовано 29 января, 2017 Вот другие ошибки вылезли (599) : error 025: function heading differs from prototype (620) : error 076: syntax error in the expression, or invalid function call Вот строки 599 - public Clock(playerid) 620 - TextDrawSetString(Text:Clock, string); Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
hteppl 214 Опубликовано 29 января, 2017 @Na'Vi,ты forward куда вставил? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Na'Vi 57 Опубликовано 29 января, 2017 ,Над пабликом Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
hteppl 214 Опубликовано 29 января, 2017 @Na'Vi, error 076: syntax error in the expression, or invalid function call У тебя нет TextDraw`а часов под названием " Clock ". Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Na'Vi 57 Опубликовано 29 января, 2017 Добавил TextDraw полезло кучас синтаксисов (599) : error 025: function heading differs from prototype (620) : error 076: syntax error in the expression, or invalid function call (6581) : error 017: undefined symbol "playerid" (6582) : error 076: syntax error in the expression, or invalid function call (6583) : error 076: syntax error in the expression, or invalid function call (6584) : error 076: syntax error in the expression, or invalid function call (6586) : error 076: syntax error in the expression, or invalid function call (6587) : error 076: syntax error in the expression, or invalid function call (6588) : error 076: syntax error in the expression, or invalid function call (6589) : error 076: syntax error in the expression, or invalid function call (6590) : error 076: syntax error in the expression, or invalid function call TextDraw TextDrawShowForPlayer(playerid,Clock); Clock = TextDrawCreate(547.000000,24.000000,"00:00"); TextDrawAlignment(Clock,0); TextDrawBackgroundColor(Clock,0x000000ff); TextDrawFont(Clock,3); TextDrawLetterSize(Clock,0.6,1.9); TextDrawColor(Clock,0x474AF9FF); TextDrawSetOutline(Clock,2); TextDrawSetProportional(Clock,1); TextDrawSetShadow(Clock,1); SetTimer("Clock", 1000, 1); Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Web 414 Опубликовано 1 февраля, 2017 @Na'Vi, Можешь использовать как FS или вписать в мод: // // Keeps the in game time synced to the server's time and // draws the current time on the player's hud using a textdraw/ // (1 minute = 1 minute real world time) // // (c) 2009-2012 SA-MP Team #include <a_samp> #pragma tabsize 0 //-------------------------------------------------- new Text:txtTimeDisp; new hour, minute; new timestr[32]; forward UpdateTimeAndWeather(); //-------------------------------------------------- new fine_weather_ids[] = {1,2,3,4,5,6,7,12,13,14,15,17,18,24,25,26,27,28,29,30,40}; new foggy_weather_ids[] = {9,19,20,31,32}; new wet_weather_ids[] = {8}; stock UpdateWorldWeather() { new next_weather_prob = random(100); if(next_weather_prob < 70) SetWeather(fine_weather_ids[random(sizeof(fine_weather_ids))]); else if(next_weather_prob < 95) SetWeather(foggy_weather_ids[random(sizeof(foggy_weather_ids))]); else SetWeather(wet_weather_ids[random(sizeof(wet_weather_ids))]); } //-------------------------------------------------- //new last_weather_update=0; public UpdateTimeAndWeather() { // Update time gettime(hour, minute); format(timestr,32,"%02d:%02d",hour,minute); TextDrawSetString(txtTimeDisp,timestr); SetWorldTime(hour); new x=0; while(x!=MAX_PLAYERS) { if(IsPlayerConnected(x) && GetPlayerState(x) != PLAYER_STATE_NONE) { SetPlayerTime(x,hour,minute); } x++; } /* Update weather every hour if(last_weather_update == 0) { UpdateWorldWeather(); } last_weather_update++; if(last_weather_update == 60) { last_weather_update = 0; }*/ } //-------------------------------------------------- public OnGameModeInit() { // Init our text display txtTimeDisp = TextDrawCreate(605.0,25.0,"00:00"); TextDrawUseBox(txtTimeDisp, 0); TextDrawFont(txtTimeDisp, 3); TextDrawSetShadow(txtTimeDisp,0); // no shadow TextDrawSetOutline(txtTimeDisp,2); // thickness 1 TextDrawBackgroundColor(txtTimeDisp,0x000000FF); TextDrawColor(txtTimeDisp,0xFFFFFFFF); TextDrawAlignment(txtTimeDisp,3); TextDrawLetterSize(txtTimeDisp,0.5,1.5); UpdateTimeAndWeather(); SetTimer("UpdateTimeAndWeather",1000 * 60,1); return 1; } //-------------------------------------------------- public OnPlayerSpawn(playerid) { TextDrawShowForPlayer(playerid,txtTimeDisp); gettime(hour, minute); SetPlayerTime(playerid,hour,minute); return 1; } //-------------------------------------------------- public OnPlayerDeath(playerid, killerid, reason) { TextDrawHideForPlayer(playerid,txtTimeDisp); return 1; } //-------------------------------------------------- public OnPlayerConnect(playerid) { gettime(hour, minute); SetPlayerTime(playerid,hour,minute); return 1; } //-------------------------------------------------- Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты