#1 26-05-2008 11:52

Flow
From: Екатеринбург
Registered: 20-02-2008
Posts: 10

ВКЛ\ВЫКЛ

может быть такое гдето уже и писали... но незнаю как сделать так чтобы при нажатии клавиши включался скрипт, а когда сново нажимают он выключался... впринципе думал что можно сделать так

{$CLEO .cs}

//-------------health---------------
:wait
wait 5000
jump @health_chek

:health_chek
wait 0
if
   0AB0:   key_pressed 56
jf @health_chek
   $var1 = 1

:health_chek2
wait 0
if and
   $var1 = 1
   0AB0:   key_pressed 56
jf @health_chek2
   $var1 = 0 


:health
wait 0
if and
   $var1 = 1
   8184: not actor $PLAYER_ACTOR health >= 40
jf @health
   actor.health($PLAYER_ACTOR) = 41
jump @health

но почемуто когда я нажимаю клавишу скрипт включается, а когда нажимаю опять он не выключается sad
помогите плз)


таксист Вазген виселае бамбила smile

Offline

#2 26-05-2008 13:51

flashTrash
From: Н.Новгород
Registered: 21-02-2007
Posts: 260
Website

Re: ВКЛ\ВЫКЛ

попробуй так:

{$CLEO}
0000:
0@ = 0

:checkkey
wait 0
if and
0AB0:  key_pressed 0x38
0@ == 0
then
    0@ = 1
    045A: draw_text_1number 320.0 155.333 GXT 'NUMBER' number 0@  // ALL RACES WON!~n~~w~$~1~
    wait 1000
    
    :checkkey2
    wait 0
    if and
    0AB0:  key_pressed 0x38
    0@ == 1
    then
        0@ = 0
        045A: draw_text_1number 320.0 155.333 GXT 'NUMBER' number 0@  // ALL RACES WON!~n~~w~$~1~
        wait 1000
    else
        goto @checkkey2
    end
else
    goto @checkkey
end
goto @checkkey

Offline

#3 26-05-2008 14:34

Alexander
Registered: 19-08-2006
Posts: 184
Website

Re: ВКЛ\ВЫКЛ

2flashTrash :
0000 не обязателен
2Flow :

jump @health_chek
:health_chek

в такой конструкции нет смысла , оно переместит указатель потока ровно на размер jmp'a , тоесть это можно убрать

также с проверками немного не правильно ибо нужен в таких случаях wait или же вообще по другому реализовать

еще при сравнение используется '==' , а не '='

в конце jmp циклит хелсы , тоесть проверка клавиши не выполнится

не тестил

{$CLEO .cs}

:Health_0
wait 1000

:Health_1
wait 0
if
  0AB0:   key_pressed 56
jf @Health_1
wait 1000 // 3адержка между нажатием клавиши на вкл. и на выкл.

:Set_health
wait 0
if
  8AB0: not key_pressed 56
jf @Health_0 
if
  8184: not actor $PLAYER_ACTOR health >= 40
jf @Set_health
actor.health($PLAYER_ACTOR) = 41
jump @Set_health

Offline

#4 26-05-2008 15:18

svetka
Registered: 29-12-2006
Posts: 222

Re: ВКЛ\ВЫКЛ

Alexander, при повторном нажатии той же клавиши игра начинается заново. Тестила.

Offline

#5 26-05-2008 16:15

Centrino Duo
Registered: 08-05-2008
Posts: 99

Re: ВКЛ\ВЫКЛ

вылетает при повторном нажати

Offline

Board footer

Powered by FluxBB