Команда rutori приветствует тебя на данном ресурсе - русском новостном блоге игры Toribash.
Для более удобного использования блога ты можешь войти, чтобы иметь возможность создавать новые темы и даже постить свои новости.
Если же ты впервые на рутори - ты можешь зарегистрироваться или же продолжить просмотр блога в режиме гостя, в котором ты также сможешь оставлять комментарии к новостям.

Блог развивается при
поддержке организации

[LUA]Расширен функционал tori-lua

 :: rutori :: News

Предыдущая тема Следующая тема Перейти вниз

20101010

Сообщение 

[LUA]Расширен функционал tori-lua




Потихоньку, потихоньку, но Хампа расширяет возможности встроенного луа.

Теперь добавлена поддержка еще части os-библиотеки, отвечающей за дату/время
(вообще, в анонсе сказано что подключена вся библиотека, но, судя по списку неподдерживаемых функций, остается только получение даты и времени)

Так же обещают включить прямую поддержку сетевого ингеймового протокола. Что опять же очень и очень хорошо.

Ну а пока Blam быстренько накатал скрипт-часики:

Код:
local x, y = get_window_size()

x = x / 2

y = y / 2

local hourlen = 40

local minlen = 50

local seclen = 50

local box = 60

local now = { }

local pi2 = 2 * math.pi



add_hook("draw2d", "",

    function()

        now = os.date("*t")

       

        hourp = pi2 * (now.hour + now.min / 60) / 12

        minp = pi2 * (now.min + now.sec / 60) / 60

        secp = pi2 * now.sec / 60

       

        set_color(0,0,0,0.5)

        draw_quad(x-box,y-box,box*2,box*2)

        set_color(1,1,1,0.3)

        draw_quad(x-box,y-box,box*2,box)

       

        --hour hand

        set_color(0,0,0,0.9)

        draw_hand(hourp, hourlen, 10, 12)

       

        --minute hand

        set_color(0.5,0,0,0.9)

        draw_hand(minp, minlen, 5)

       

        --second hand

        set_color(1,1,1,0.9)

        draw_hand(secp, seclen, 1, 60)

    end

)



local function draw_hand(angle, length, width, interval)

    if(interval == nil) then interval = 0 end

    draw_line(x,y,x+(length*math.sin(angle)), y+(-length*math.cos(angle)), width)

   

    for i = 0, interval do

        local xx = x+(length*math.sin(pi2 * i / interval))

        local yy = y+(-length*math.cos(pi2 * i / interval))

        draw_line(xx,yy,xx+1,yy-1, 2)

    end

end

avatar
Nirs
Админ

Сообщения : 749
Дата регистрации : 2009-03-28
Настроение : Я тебя съем

Вернуться к началу Перейти вниз

Опубликовать эту запись на: diggdeliciousredditstumbleuponslashdotyahoogooglelive

[LUA]Расширен функционал tori-lua :: Комментарии

avatar

Сообщение в Вс 17 Окт 2010, 09:31 автор Денис

И накой хрен мне часы в торибаше?

Вернуться к началу Перейти вниз

avatar

Сообщение в Вс 17 Окт 2010, 21:37 автор Sylar95

ваххаха, скоро будет итем наручные часы Very Happy

Вернуться к началу Перейти вниз

avatar

Сообщение в Вс 17 Окт 2010, 22:05 автор Mariacho

ну да, соглашусь с денисом)
тори все-раво не во весь экран, поэтому время можно посмотреть в правом нижнем углу)

возможно эта функция введена для дальнейших манипуляций со временем, например: автоматически запускался турн на 18:00 и т.п.
(или это раньше было?)

Вернуться к началу Перейти вниз

avatar

Сообщение в Пн 18 Окт 2010, 19:03 автор Sylar95

да, но только в ручную
был бы таймер в секундах, показывающий время хода

Вернуться к началу Перейти вниз

avatar

Сообщение в Вт 19 Окт 2010, 02:56 автор Mariacho

Sylar95 пишет:да, но только в ручную
был бы таймер в секундах, показывающий время хода
да, было бы неплохо)
хотя сути не меняет конечно 4-)

Вернуться к началу Перейти вниз

Сообщение  автор Спонсируемый контент

Вернуться к началу Перейти вниз

Предыдущая тема Следующая тема Вернуться к началу


 :: rutori :: News

 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения