كود PHP:
alias -l snake.about var %. @HyPe.ular, %- snake.aline | window -aClk +ef %. 0 0 370 120 %. Fixedsys | %- $str(.,21) $+ IRC4Arab.Net..... | %- . | %- ..The.Official.HelpDesk.Website:...... | %- .....http!//IRC4Arab!Net......... | %- .....Email:.q8bahamen@hotmail!com....... | %- ............or .ELeeK@IRC4Arab!net!....... | %-. | %- ......(Double click window to Close) | sline %. 12
alias -l snake.aline aline @HyPe.ular $replace($1-,., ,!,.,-, ,¦,-)
menu @HyPe.ular {
dclick: window -c @HyPe.ular | { /snake }
}
on 1:close:@snake: { .timerular* off | unset %ular_* }
alias ular.version return 1.0
alias ular.cas return 7
alias snake {
window -pktoa +betl @Snake 50 50 200 200
window -r @snake
titlebar @snake
ular.intro
}
menu menubar {
-
الثعبان
.لعبة جديده:snake
.-
.معلومات:snab
}
alias ular.newgame {
.timerular* off
clear @snake
drawrect -f @snake 10 10 0 0 400 400 200 200 200
drawrect -f @snake 1 1 10 20 $calc($calc($ular.cas * 22)+14) $ular.cas
drawrect -f @snake 1 1 15 30 $calc(($ular.cas * 22)+5) $ular.cas
drawrect -f @snake 1 1 15 $calc(($ular.cas *11)+37) $calc(($ular.cas * 22)+5) $ular.cas
drawrect -f @snake 1 1 10 30 $ular.cas $calc(($ular.cas * 12)+7)
drawrect -f @snake 1 1 $calc(($ular.cas *22)+17) 30 $ular.cas $calc(($ular.cas * 12)+7)
%ular_points = 0
ular.scores 0
%ular_serp = 5 5;6 5;7 5;8 5;9 5;10 5
%ular_dir = r
if (%ular.lev == $null) %ular.lev = 125
.timerular -m 0 %ular.lev ular.process
ular.apple
%ular_game = on
}
;Marcadores
alias ular.scores {
drawtext -bc @snake 10 10 "Verdana" 14 5 5 290 25 $str($chr(160),100)
drawtext -bc @snake 1 10 "Verdana" 14 10 5 290 25 $str(0,$calc(4- $len($$1))) $+ $$1
}
alias ular.c { drawrect -f @snake $$1 1 $calc(10+($ular.cas * $$2)) $calc(30+($ular.cas * $$3)) $ular.cas $ular.cas }
alias ular.drawsnake { var %i 1 | while ($gettok(%ular_serp,%i,59)) { ular.c 0 $gettok(%ular_serp,%i,59) | inc %i } }
alias ular.lastpos return $gettok(%ular_serp,$calc($pos(%ular_serp,;,0) +1),59)
alias ular.process {
if ($ular.freec == $false) {
.timerular off
ular.gameover
return
}
else {
%ular_cmov = 1
if (%ular_eat == $null) {
ular.c 10 $gettok(%ular_serp,1,59)
%ular_serp = $gettok(%ular_serp,2-,59)
}
if (%ular_eat) {
%ular_points = %ular_points + $ular.levpoints
ular.scores %ular_points
%ular_serp = $gettok(%ular_serp,1-,59)
unset %ular_eat
}
ular.mv
ular.drawsnake
if (%ular_apple == $ular.lastpos) {
%ular_eat = on
ular.apple
}
}
}
alias ular.mv {
goto %ular_dir
:r | %ular_serp = %ular_serp $+ $chr(59) $+ $calc($gettok($ular.lastpos,1,32) +1) $gettok($ular.lastpos,2,32) | return
:l | %ular_serp = %ular_serp $+ $chr(59) $+ $calc($gettok($ular.lastpos,1,32) -1) $gettok($ular.lastpos,2,32) | return
:u | %ular_serp = %ular_serp $+ $chr(59) $+ $gettok($ular.lastpos,1,32) $calc($gettok($ular.lastpos,2,32) -1) | return
:d | %ular_serp = %ular_serp $+ $chr(59) $+ $gettok($ular.lastpos,1,32) $calc($gettok($ular.lastpos,2,32) +1) | return
}
on 1:KEYDOWN:@snake:*:{
if ($keyval == 80) {
if (%ular_game == on) {
if (%ular_pause == on) {
.timerular -m 0 %ular.lev ular.process
unset %ular_pause
drawtext -bc @snake 10 10 "Verdana" 9 3 150 200 10 اللعبه متوقفه! اضغط [P] للآستمرار
}
else {
.timerular off
%ular_pause = on
drawtext -bc @snake 1 10 "Verdana" 9 3 150 200 10 اللعبه متوقفه! اضغط [P] للآستمرار
}
}
}
if ($keyval == 78) ular.newgame
if ($keyval == 69) window -c @snake
if (%ular_cmov) {
if ($keyval == 37) && (%ular_dir != r) { %ular_dir = l | %ular_cmov = 0 }
elseif ($keyval == 39) && (%ular_dir != l) { %ular_dir = r | %ular_cmov = 0 }
elseif ($keyval == 38) && (%ular_dir != d) { %ular_dir = u | %ular_cmov = 0 }
elseif ($keyval == 40) && (%ular_dir != u) { %ular_dir = d | %ular_cmov = 0 }
}
}
alias ular.freec {
if (%ular_dir == r) {
var %x $calc($gettok($ular.lastpos,1,32) +1) $gettok($ular.lastpos,2,32)
if ($calc($gettok($ular.lastpos,1,32) +1) > 22) return $false
}
if (%ular_dir == l) {
var %x $calc($gettok($ular.lastpos,1,32) -1) $gettok($ular.lastpos,2,32)
if ($calc($gettok($ular.lastpos,1,32) -1) < 1) return $false
}
if (%ular_dir == u) {
var %x $gettok($ular.lastpos,1,32) $calc($gettok($ular.lastpos,2,32) -1)
if ($calc($gettok($ular.lastpos,2,32) -1) < 1) return $false
}
if (%ular_dir == d) {
if ($calc($gettok($ular.lastpos,2,32) +1) > 11) return $false
var %x $gettok($ular.lastpos,1,32) $calc($gettok($ular.lastpos,2,32) +1)
}
if ($istok(%ular_serp,%x,59) == $true) return $false
return $true
}
alias ular.apple {
:init
var %x = $rand(1,22) $rand(1,11)
if ($istok(%ular_serp,%x,59)) goto init
ular.c 4 %x
%ular_apple = %x
}
alias ular.gameover {
clear @snake
drawrect -f @snake 1 10 0 0 400 400 200 200 200
drawtext -bc @snake 0 1 "Verdana" 50 10 5 290 50 Snake
drawtext -bc @snake 4 1 "terminal" 25 20 80 290 50 انتهت اللعبه
drawtext -bc @snake 11 1 "Arial" 12 20 120 290 50 %ular_points points $iif(%ular_points > %ular.maxs,NEW Record!!!)
if (%ular_points > %ular.maxs) %ular.maxs = %ular_points
.timerularmenu 1 3 ular.intro
unset %ular_game
}
alias ular.intro {
clear @snake
if (%ular.maxs == $null) %ular.maxs = 0
drawrect -f @snake 1 10 0 0 400 400 200 200 200
drawtext -bc @snake 0 1 "Verdana" 50 10 5 290 50 Snake
drawtext -bc @snake 11 1 "Verdana" 11 20 75 290 50 http://IRC4Arab.Net
drawtext -bc @snake 11 1 "Arial" 14 20 100 290 50 الخيارات: Right click
drawtext -bc @snake 9 1 "Arial" 14 70 130 290 50 BahaMen
drawtext -bc @snake 0 1 "Arial" 14 70 150 290 50 نقاط: %ular.maxs points
unset %ular_game
}
alias ular.controls {
window -pkrtoa +betl @Snake.Controls 60 60 200 130
window -r @Snake.Controls
titlebar @snake.controls
clear @snake.controls
drawrect -f @snake.controls 1 10 0 0 400 400 200 200 200
drawtext -bc @snake.controls 9 1 "Arial" 14 10 2 200 50 التحكم:
drawtext -bc @snake.controls 11 1 "Verdana" 11 10 22 200 50 [N] ¤ لعبة جديده
drawtext -bc @snake.controls 11 1 "Verdana" 11 10 42 200 50 [P] ¤ توقف
drawtext -bc @snake.controls 11 1 "Verdana" 11 10 62 200 50 [E] ¤ خروج
drawtext -bc @snake.controls 11 1 "Verdana" 11 10 82 200 50 [مفاتيح المؤشر] ¤ تحريك
}
menu @snake {
&لعبة جديده: {
ular.newgame
}
&اعلى نقاط: {
highscore
}
&المستوى [[ $+ $ular.level $+ ]]
.المستوى 1:set %ular.lev 250
.المستوى 2:set %ular.lev 225
.المستوى 3:set %ular.lev 175
.المستوى 4:set %ular.lev 125
.المستوى 5:set %ular.lev 100
.المستوى 6:set %ular.lev 75
.المستوى 7:set %ular.lev 50
&التحكم:ular.controls
-
&معلومات:snab
}
menu @snake.controls {
sclick { window -c $active }
rclick { window -c $active }
}
alias highscore {
dialog -m highscore highscore
}
dialog highscore {
title "اعلى نقاط"
size -1 -1 250 188
box "Snake نقاط", 17, 2 5 245 145
text "النك نيم:", 65, 58 20 50 12, left
text "النقاط:", 66, 173 20 50 12, left
text "<> 1", 60, 7 44 30 12,left
text "<> 2", 61, 7 64 30 12,left
text "<> 3", 62, 7 84 30 12,left
text "<> 4", 63, 7 104 30 12,left
text "<> 5", 64, 7 124 30 12,left
edit "", 1, 35 41 100 20, hs center
edit "", 2, 35 61 100 20, hs center
edit "", 3, 35 81 100 20, hs center
edit "", 4, 35 101 100 20, hs center
edit "", 5, 35 121 100 20, hs center
edit "", 11, 138 41 100 20, hsc center
edit "", 12, 138 61 100 20, hsc center
edit "", 13, 138 81 100 20, hsc center
edit "", 14, 138 101 100 20, hsc center
edit "", 15, 138 121 100 20, hsc center
button "اغلاق", 16, 4 158 241 25, ok
}
on *:dialog:highscore:init:0: {
did -a highscore 1 %nick.ular1
did -a highscore 2 %nick.ular2
did -a highscore 3 %nick.ular3
did -a highscore 4 %nick.ular4
did -a highscore 5 %nick.ular5
did -a highscore 11 %ular.maxs
did -a highscore 12 %ular.maxs
did -a highscore 13 %ular.maxs
did -a highscore 14 %ular.maxs
did -a highscore 15 %ular.maxs
}
on *:dialog:highscore:edit:*: {
if $did(1) { set %nick.ular1 $did(1) }
if $did(2) { set %nick.ular2 $did(2) }
if $did(3) { set %nick.ular3 $did(3) }
if $did(4) { set %nick.ular4 $did(4) }
if $did(5) { set %nick.ular5 $did(5) }
if $did(11) { set %ular.maxs $did(11) }
if $did(12) { set %ular.maxs $did(12) }
if $did(13) { set %ular.maxs $did(13) }
if $did(14) { set %ular.maxs $did(14) }
if $did(15) { set %ular.maxs $did(15) }
}
alias snab dialog -md snab snab
dialog snab {
title "Snake"
size -1 -1 1 1
text "", 1, 50 20 150 15
button "جميع الحقوق محفوظة لدى ايرسي العرب", 2, 10 60 280 50, center
text "الموقع:", 3, 10 134 50 15
edit "http://irc4arab.net", 4, 60 130 150 22, autohs read
button "زيارة", 5, 220 130 50 22, center
edit "", 6, 10 160 280 80, read multi return autohs autovs
box "", 7, -10 40 320 210
button "اغلاق", 200, 120 260 60 30, ok
}
on *:dialog:snab:init:*: {
did -o snab 6 1 Credits: | did -o snab 6 2 زورو #Helpdesk في WeArab
did -o snab 6 3 تم التصميم بواسطة BesTeaM | did -o snab 6 4 حقوق التعريب محفوظة BahaMen
did -o snab 6 5 تم التصميم بواسطة BesTeaM | did -a snab 1 حقوق التعريب محفوظة BahaMen
%.anim._i = 0 | .timer_anim -m 0 1 snab.anim
}
on *:dialog:snab:sclick:2:.timer 1 0 echo -a 8,1 Http://IRC4Arab.Net
on *:dialog:snab:sclick:5:.run http://IRC4Arab.Net
alias snab.anim {
if (($dialog(snab) == $null) || (%.anim._i > 150)) { .timer_anim off | unset %.anim.tmp* %.anim._i | return }
:1 | %.anim.tmpx = $calc(($window(-1).w / 2) - %.anim._i) | %.anim.tmpy = $calc(($window(-1).h / 2) - %.anim._i) | %.anim.tmpw = $calc(%.anim._i * 2) | %.anim.tmph = $calc(%.anim._i * 2)
dialog -s snab %.anim.tmpx %.anim.tmpy %.anim.tmpw %.anim.tmph | inc %.anim._i 5
}
alias ular.level {
if (%ular.lev == $null) { %ular.lev = 250 }
if (%ular.lev == 250) return 1
if (%ular.lev == 225) return 2
if (%ular.lev == 175) return 3
if (%ular.lev == 125) return 4
if (%ular.lev == 100) return 5
if (%ular.lev == 75) return 6
if (%ular.lev == 50) return 7
}
alias ular.levpoints {
if (%ular.lev == $null) { %ular.lev = 250 }
if (%ular.lev == 250) return 3
if (%ular.lev == 225) return 4
if (%ular.lev == 175) return 5
if (%ular.lev == 125) return 6
if (%ular.lev == 100) return 7
if (%ular.lev == 75) return 8
if (%ular.lev == 50) return 9
}
alias ular.info {
window -k @Snake.Info 100 100 500 200
echo $colour(info) @Snake.info ¤ Snake ( $+ $ular.version $+ )
echo $colour(info) @Snake.info ¤ #HelpDesk WeArab.Net
echo $colour(info) @Snake.info ¤------------------------------¤
echo $colour(info) @Snake.info ¤ BahaMen
}