Mirc Sohbet Girişi


şifreniz yoksa boş bırakın.

Mirc Puzzle Oyunu

mIRC sohbet Odaları Mirc Chat mIRCSohbet.Org Türkiye'nin En Eski Mirc Sohbet Sunucusu.

Mirc Puzzle Oyunu

 

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;[mIRC PuzzLe / Yapboz ] by jeun;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

menu * {
  sclick:{
    if ($active == @PuZzLe) {
      if ($mouse.x  isnum %puzz_x_click && $mouse.y isnum %puzz_y_click) {
        drawpic -s @PuZzLe 1 1 $calc($window(@PuZzLe).bw / 2)  $calc($window(@PuZzLe).bh -55) $qt($msfile($msfile(.,Picture Upload,Load)))
        set %puzz_pixel_x $calc($window(@PuZzLe).bw / 2)
        set %puzz_pixel_y $calc($window(@PuZzLe).bh -55) 
        puzzle_data_clear
      }
      if ($mouse.x  isnum %puzz_xx_click && $mouse.y isnum %puzz_yy_click) {
        if (%puzz_game_started) {  return }
        ;clears all writing data in text files for tile location on puzzle
        puzzle_data_clear
        var %puz_yat = $puzzle_the_pic_line_yatay($int(%puzz_pixel_y),$int(%puzz_pixel_x))
        var %puz_dik = $puzzle_the_pic_line_dikey($int(%puzz_pixel_x),$int(%puzz_pixel_y))
        var %k_ = 1, %l_ = 0, %m_ = 1, %n_ = 0
        var %puz_top_kare_ =  $calc(%puzz_diff * %puzz_diff)
        while (%k_ <= %puz_top_kare_)  {
          write puzzle.txt %l_ %n_ %puz_dik %puz_yat 
          write puzzle2.txt $calc(($window(@PuZzLe).bw / 2) + %l_) %n_
          if (%puzz_diff // %m_) { var %l_ = 0 | inc %n_ %puz_yat | goto x  }
          inc %l_ %puz_dik
          :x
          inc %m_
          inc %k_
        }
        rand_load_from_txt_file
        drawrect -f @PuZzLe 0 1 1 1 $calc($window(@PuZzLe).bw / 2) $calc($window(@PuZzLe).bh -55)     
        noop $puzzle_the_pic_line_yatay($int(%puzz_pixel_y),$int(%puzz_pixel_x))
        noop $puzzle_the_pic_line_dikey($int(%puzz_pixel_x),$int(%puzz_pixel_y))
      }
      ;SCLICK on the SECOND puzzle
      if ($mouse.x  isnum $+($calc($window(@PuZzLe).bw / 2),-,$window(@PuZzLe).bw) && $mouse.y isnum $+(1,-,$calc($window(@PuZzLe).bh - 70))) {
        if ($puzzle_second_kontrol($mouse.x,$mouse.y) == OK) { return }
        var %cccc_ = %puzz_second_tile_location
        $select_tile_from_location_puzzle($mouse.x,$mouse.y,2)
        if (%cccc_ != %puzz_second_tile_location) { set %puzz_second_picture_sclicked OK }
        ;;;;SOMETIMES WHY??????
        if (%cccc_ == %puzz_second_tile_location) { unset %puzz_second_tile_location }
      }
      ;SCLICK on the FIRST puzzle
      if ($mouse.x  isnum $+(1,-,$calc($window(@PuZzLe).bw / 2)) && $mouse.y isnum $+(1,-,$calc($window(@PuZzLe).bh - 70))) { 
        if (%puzz_first_picture_sclicked && %puzz_yy_click) {
          ;1. resimde degisiklik yapinca    
          var %mmm_ = %puzz_first_tile_location
          $select_tile_from_location_puzzle($mouse.x,$mouse.y,1)
          ;kendi kendine kare tasimasini engeller        
          if (%mmm_ == %puzz_first_tile_location) { 
            unset %puzz_first_picture_sclicked
            unset %puzz_second_picture_sclicked
            goto fin
          } 
          if !$read(puzzle_first.txt,w,%puzz_first_tile_location) {
            drawcopy @PuZzLe $gettok(%mmm_,1-4,32) @PuZzLe $gettok(%puzz_first_tile_location,1-2,32)
            write $+(-dw,$qt($+($gettok(%mmm_,1-4,32),*))) puzzle_first.txt
            write $+(-w,$qt(%puzz_first_tile_location)) puzzle_first.txt %puzz_first_tile_location
            drawrect -f @PuZzLe 0 1 $gettok(%mmm_,1-4,32)
            drawrect -c @PuZzLe 1 1 $gettok(%mmm_,1-4,32)
            unset %puzz_first_picture_sclicked
            unset %puzz_second_picture_sclicked
            goto fin
          }
        }
        if (%puzz_second_picture_sclicked && %puzz_yy_click && !%puzz_first_picture_sclicked) {
          ;COPIES TILE TO FIRST PUZZLE FROM SECOND PUZZLE By Drawcopy
          $select_tile_from_location_puzzle($mouse.x,$mouse.y,1)
          if !$read(puzzle_first.txt,w,%puzz_first_tile_location) {
            drawcopy @PuZzLe $gettok(%puzz_second_tile_location,5-6,32) $gettok(%puzz_second_tile_location,3-4,32) @PuZzLe $gettok(%puzz_first_tile_location,1-2,32)
            write $+(-w,$qt(%puzz_first_tile_location)) puzzle_first.txt %puzz_first_tile_location
            drawrect -f @PuZzLe 0 1 $gettok(%puzz_second_tile_location,5-6,32) $gettok(%puzz_second_tile_location,3-4,32)
            drawrect -d @PuZzLe 1 1 $gettok(%puzz_second_tile_location,5-6,32) $gettok(%puzz_second_tile_location,3-4,32)
            write puzzle2.txt $gettok(%puzz_second_tile_location,5-6,32)
            if  (!%puzz_game_started) { set %puzz_game_started OK }
            unset %puzz_second_picture_sclicked
            goto fin      
          }
        }
        $select_tile_from_location_puzzle($mouse.x,$mouse.y,1)
        if $read(puzzle_first.txt,w,%puzz_first_tile_location) { set %puzz_first_picture_sclicked OK }
      }
      :fin
    } 
  }
  Puzzle:{
    var %p = @PuZzLe
    if ($window(%p)) { window -c %p } 
    window -p %p
    set %puzz_diff 5
    dialog -m puzzle puzzle  

    var %txt_ = Click Here For Load Picture
    var %gen_ = $calc($width(%txt_,verdana,20) / 2 )
    drawtext -b @PuZzLe $color(info) verdana $calc(($window(%p).bw /4) - $int(%gen_)) $calc($window(%p).bh - 50) %txt_
    set %puzz_x_click $calc(($window(%p).bw / 4) - $int(%gen_)) $+ - $+ $calc(($window(%p).bw / 4) + $int(%gen_)) 
    set %puzz_y_click $calc(($window(%p).bh - 50) - 5) $+ - $+ $calc(($window(%p).bh - 50) + 20)
    ;;;
    var %txt_ = Click Here For To Start Puzzle
    var %gen_ = $calc($width(%txt_,verdana,20) / 2 )
    drawtext -b @PuZzLe $color(info) verdana $calc(($window(%p).bw /2) + $int(%gen_)) $calc($window(%p).bh - 50) %txt_
    set %puzz_xx_click $calc(($window(%p).bw / 2) + $int(%gen_)) $+ - $+ $calc(($window(%p).bw) - $int(%gen_)) 
    set %puzz_yy_click $calc(($window(%p).bh - 50) - 5) $+ - $+ $calc(($window(%p).bh - 50) + 20)
  }
}

;HORIZONTAL LINES TO MAKE TILE
alias -l puzzle_the_pic_line_yatay {
  var %m_  = 0
  var %n_ = $int($calc($1 / %puzz_diff))
  set %puzzle_yatay %n_
  while (%m_ <= $1) {
    drawline -i @PuZzLe 1 1 1 %m_ $2 %m_
    inc %m_ %n_
  }
  return $int($calc($1 / %puzz_diff)) 
}
;VERTICAL LINES TO MAKE TILE
alias -l puzzle_the_pic_line_dikey {
  var %m_  = 0
  var %n_ = $int($calc($1 / %puzz_diff))
  set %puzzle_dikey %n_
  while (%m_ <= $1) {
    drawline -i @PuZzLe 1 1 %m_ 1 %m_ $2
    inc %m_ %n_
  }
  return $int($calc($1 / %puzz_diff)) 
}
;RANDOM PICTURE TILES
alias -l rand_load_from_txt_file {
  var %j_ = 1
  while (%j_ <= $calc(%puzz_diff * %puzz_diff)) {
    var %t_ = $read(puzzle.txt)
    write $+(-dl,$readn) puzzle.txt
    var %n_ = $read(puzzle2.txt)
    write puzzle_r.txt %t_ %n_
    write $+(-dl,$readn) puzzle2.txt
    inc %j_
  }
  var %j_ = 1
  while (%j_ <= $calc(%puzz_diff * %puzz_diff))  {
    drawcopy @PuZzLe $gettok($read(puzzle_r.txt,%j_),1-4,32) @PuZzLe $gettok($read(puzzle_r.txt,%j_),5-,32)
    inc %j_
  }
}
alias -l select_tile_from_location_puzzle {
  var %x_ = 1, %c_ = $lines(puzzle_r.txt), %puz_x = $1, %puz_y = $2, %puzz_no = $3
  while (%x_ <= %c_) {
    tokenize 32 $read(puzzle_r.txt,%x_)
    if (%puzz_no == 2) {
      if (%puz_x isnum $+($5,-,$calc($5 + %puzzle_dikey)) && %puz_y isnum $+($6,-,$calc($6 + %puzzle_yatay))) {  set %puzz_second_tile_location $$1- | goto ok }
    }
    if (%puzz_no == 1) {
      if (%puz_x isnum $+($1,-,$calc($1 + %puzzle_dikey)) && %puz_y isnum $+($2,-,$calc($2 + %puzzle_yatay))) {  set %puzz_first_tile_location $$1- | goto ok  }
    }
    inc %x_
  }
  :ok
}
alias -l puzzle_second_kontrol {
  var %x_ = 1, %c_ = $lines(puzzle2.txt), %puz_x = $1, %puz_y = $2
  while (%x_ <= %c_) {
    tokenize 32 $read(puzzle2.txt,%x_)
    if (%puz_x isnum $+($1,-,$calc($1 + %puzzle_dikey)) && %puz_y isnum $+($2,-,$calc($2 + %puzzle_yatay))) {  return OK | break  }
    inc %x_
  }
}
alias puzzle_data_clear {
  write -c puzzle.txt
  write -c puzzle2.txt
  write -c puzzle_r.txt
  write -c puzzle_first.txt
}
on 1:CLOSE:@PuZzLe:{ 
  unset %puzz*
  puzzle_data_clear
}
dialog puzzle {
  title "Choice Difficulty for Puzzle"
  size -1 -1 103 55
  option dbu
  button "Easy", 1, 26 6 54 12
  button "Medium", 2, 26 21 54 12
  button "Hard", 3, 26 36 54 12
}
on 1:dialog:puzzle:sclick:*: {
  if ($did == 1) { set %puzz_diff 5 }
  if ($did == 2) { set %puzz_diff 7 }
  if ($did == 3) { set %puzz_diff 9 }
  dialog -x puzzle
}

 

Etiketler: , , , , , , , ,
Bilgilendirme

Mirc Sohbet Sitelerinde yaş sınırlaması olup 18 yaşından küçükler olmamalıdır.

Sohbet sitelerimizde sadece yazılı sohbet hizmeti verilerek sohbet edebileceğiniz bir platformdur.

Sunucu içerisinde kurallara aykırı davranış yapanlar uzaklaştırılır.

Sizleri rahatsız eden kullanıcıları kanal yöneticilerine veya #operhelp kanalına şikayet edebilirsiniz.

Sık Sorulan Sorular

Mirc Sohbete nasıl bağlanabilirim?

Mirc sohbet odalarına her model akıllı telefon ve tabletleriniz ile kolay bir şekilde bağlanarak sohbet edebilirsiniz.

Mirc Sohbet ücretsiz mi?

Sohbet sitelerimizde özgür ve sınırsız bir şekilde sohbet ederek keyifli zamanlar geçirebilirsiniz.

Yaş sınırlaması var mı?

Sohbeti daha kaliteli ve olgun bir hale getirmek için 18 yaşından küçükler site içerisinde sohbet edememektedir.

Sitene Sohbet Ekle

Bağlantı kurmak istediğiniz Linkleri Sunucu içerisinde ki yöneticilere bildirerek kendinize ücretsiz kanal oluşturabilirsiniz.