Juno_okyo

ORC Example 2

Sep 18th, 2015
273
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
AutoIt 5.31 KB | None | 0 0
  1. Func getString($y)
  2.     For $i = 0 To 3
  3.         Local $x_Temp = 35
  4.         If getChar($x_Temp, $y) = "  " Or getChar($x_Temp, $y) = "|" Then
  5.             $y += 1
  6.         Else
  7.             ExitLoop
  8.         EndIf
  9.     Next
  10.     Local $x = 35
  11.     Local $String = ""
  12.     Do
  13.         $String &= getChar($x, $y)
  14.     ;Until (StringMid($String, StringLen($String) - 1, 2) = "   " Or StringMid($String, StringLen($String), 1) = "|")
  15.     Until StringMid($String, StringLen($String), 1) = "|" or $x >= 310
  16.     $String = StringReplace($String, "   ", " ")
  17.     $String = StringReplace($String, "  ", " ")
  18.     $String = StringReplace($String, "|", Null)
  19.  
  20.     Return $String
  21. EndFunc
  22.  
  23. Func getChar(ByRef $x, $y)
  24.     Local $charWidth[54] = [2, _                        ;{space}
  25.                             7,5,7,6,6,5,6,6,6,6, _      ;Aa Bb Cc Dd Ee
  26.                             5,5,6,5,8,6,2,2,6,3, _      ;Ff Gg Hh Ii Jj
  27.                             7,5,4,2,10,10,7,6,6,6, _    ;Kk Ll Mm Nn Oo
  28.                             6,5,7,6,7,5,7,6,6,6, _      ;Pp Qq Rr Ss Tt
  29.                             7,6,7,6,11,9,7,6,7,6, _     ;Uu Vv Ww Xx Yy
  30.                             7,4,2]                      ;Zz ,
  31.  
  32.     Local $charString[54] = [" ", _
  33.                             "A", "a", "B", "b", "C", "c", "D", "d", "E", "e", _
  34.                             "F", "f", "G", "g", "H", "h", "I", "i", "J", "j", _
  35.                             "K", "k", "L", "l", "M", "m", "N", "n", "O", "o", _
  36.                             "P", "p", "Q", "q", "R", "r", "S", "s", "T", "t", _
  37.                             "U", "u", "V", "v", "W", "w", "X", "x", "Y", "y", _
  38.                             "Z", "z", ","]
  39.  
  40.     Local $charOffset[54][3][2] = [[[1,3], [1,7], [2,5]], _                                                                                     ;{space}
  41.  [[1,8], [5,7], [6,8]], [[5,3], [1,4], [4,7]], [[6,1], [1,1], [3,4]], [[3,4], [4,7], [1,1]], [[1,1], [2,2], [5,3]], [[3,2], [5,8], [4,4]], _    ;Aa Bb Cc
  42.  [[3,7], [6,1], [2,3]], [[3,4], [4,7], [1,3]], [[2,6], [2,2], [3,0]], [[1,2], [2,3], [4,6]], [[3,2], [1,8], [5,1]], [[5,1], [2,4], [2,8]], _    ;Dd Ee Ff
  43.  [[4,4], [3,0], [4,5]], [[1,9], [4,8], [4,4]], [[5,8], [3,3], [1,1]], [[2,5], [3,4], [5,3]], [[1,2], [2,5], [1,8]], [[1,1], [1,2], [1,8]], _    ;Gg Hh Ii
  44.  [[1,5], [4,7], [6,1]], [[1,0], [1,4], [1,9]], [[2,3], [3,6], [6,0]], [[1,1], [2,1], [4,8]], [[2,7], [4,7], [1,0]], [[1,2], [0,2], [1,7]], _    ;Jj Kk Ll
  45.  [[4,8], [6,1], [8,8]], [[1,8], [7,2], [5,4]], [[3,1], [5,4], [6,1]], [[5,3], [4,8], [2,5]], [[2,6], [2,0], [5,6]], [[2,4], [4,5], [3,2]], _    ;Mm Nn Oo
  46.  [[4,2], [2,8], [5,3]], [[2,4], [1,10],[5,3]], [[4,9], [2,2], [6,4]], [[3,4], [4,8], [4,10]],[[4,2], [3,6], [6,1]], [[4,5], [2,6], [2,2]], _    ;Pp Qq Rr
  47.  [[2,0], [5,4], [3,7]], [[2,2], [4,4], [2,7]], [[1,0], [4,2], [2,8]], [[2,1], [1,8], [4,6]], [[1,1], [1,8], [5,1]], [[2,3], [2,7], [4,3]], _    ;Ss Tt Uu
  48.  [[2,2], [3,5], [5,7]], [[2,3], [3,6], [5,3]], [[2,3], [6,1], [9,8]], [[3,5], [5,7], [8,8]], [[1,2], [3,7], [5,4]], [[1,4], [2,8], [5,6]], _    ;Vv Ww Xx
  49.  [[2,1], [5,5], [3,8]], [[1,8], [3,7], [3,10]],[[2,2], [1,7], [5,7]], [[1,4], [3,5], [2,8]], [[1,7], [1,8], [1,9]]]                             ;Yy Zz ,
  50.  
  51.     Local $charColor[54][3] = [[0x3F4440,0x3F4440,0x3F4440], _                                                                                                                      ;{space}
  52.  [0xE7E7E7,0xDBDCDB,0xD5D6D5],[0xACAEAC,0xC2C3C2,0xDADBDA],[0xE2E3E2,0xFBFBFA,0xE8E9E8],[0x8D8F8D,0xCACBCA,0xFBFBFB],[0xE8E8E8,0xC9CAC9,0xDBDBDB],[0x818481,0x949694,0xECEDEC], _   ;Aa Bb Cc
  53.  [0xACAEAC,0xA0A2A0,0xB6B8B6],[0x8D8F8D,0xE4E5E4,0xABADAB],[0xA5A7A5,0xC3C5C3,0x767976],[0x404440,0xF5F5F5,0x7B7D7B],[0x515451,0xE1E1E1,0xC6C7C6],[0xC4C5C4,0xBFC0BF,0x535653], _   ;Dd Ee Ff
  54.  [0x707370,0xC4C5C4,0xD1D2D1],[0xD7D7D7,0xE6E6E6,0xE7E7E7],[0x5F635F,0x464A46,0xFAFAFA],[0x818481,0xD3D4D3,0x646764],[0xFEFEFE,0xA3A5A3,0xE1E1E1],[0xF0F1F0,0x454945,0xE1E1E1], _   ;Gg Hh Ii
  55.  [0x8E908E,0xC4C5C4,0xFBFBFB],[0x9CA19D,0xF9F9F9,0xF9F9F9],[0xCFD0CF,0x828482,0x7C7E7C],[0xFBFBFB,0x646764,0xDBDCDB],[0xFDFDFD,0x828482,0x646764],[0xFEFEFE,0x909290,0xFEFEFE], _   ;Jj Kk Ll
  56.  [0x8C8E8C,0x6A6D6A,0xA9ABA9],[0xD5D6D5,0x585C58,0xFFFFFF],[0x949694,0x707370,0xBFC0BF],[0xBEC0BE,0x8A8D8A,0x7A7D7A],[0xBBBDBB,0x888A88,0xD9DAD9],[0x888A88,0xA9ABA9,0x585C58], _   ;Mm Nn Oo
  57.  [0x636663,0x858785,0xE6E7E6],[0x8D908D,0xFFFFFF,0x898B89],[0xE6E7E6,0xABADAB,0xFFFFFF],[0x696C69,0xFFFFFF,0xC1C2C1],[0x575A57,0x939593,0xB8BAB8],[0x747774,0x5F635F,0x464A46], _   ;Pp Qq Rr
  58.  [0x8E908E,0x9C9E9C,0x7C7F7C],[0x707370,0xC3C4C3,0x909290],[0x707370,0xB7B8B7,0x969896],[0x767976,0xB6B8B6,0xA6A8A6],[0xFBFBFB,0x626562,0xBFC0BF],[0x525652,0xCBCCCB,0x888A88], _   ;Ss Tt Uu
  59.  [0x898C89,0x707370,0xE1E2E1],[0x595C59,0x525652,0xEEEEEE],[0xAEB0AE,0xC5C6C5,0x989A98],[0x8E918E,0x747674,0x797C79],[0x989B98,0x939593,0xB6B8B6],[0x8C8E8C,0x9EA09E,0x4C4F4C], _   ;Vv Ww Xx
  60.  [0xA1A3A1,0x8C8E8C,0xD5D6D5],[0x5D615D,0xEEEEEE,0xE8E9E8],[0x505450,0x707370,0x888B88],[0x757775,0x757875,0xDADBDA],[0xE8E8E8,0xFEFEFE,0xA5A7A5]]                                  ;Yy Zz ,
  61.  
  62.     For $i = 0 to 53
  63.         For $z = -1 to 4
  64.             Local $pixel1[3] = [$x + $z + $charOffset[$i][0][0], $y + $charOffset[$i][0][1], Hex($charColor[$i][0], 6)]
  65.             Local $pixel2[3] = [$x + $z + $charOffset[$i][1][0], $y + $charOffset[$i][1][1], Hex($charColor[$i][1], 6)]
  66.             Local $pixel3[3] = [$x + $z + $charOffset[$i][2][0], $y + $charOffset[$i][2][1], Hex($charColor[$i][2], 6)]
  67.             If boolPixelSearch($pixel1, $pixel2, $pixel3, 1) Then
  68.                 $x += $z + $charWidth[$i]
  69.                 Return $charString[$i]
  70.             EndIf
  71.         Next
  72.     Next
  73.     Return "|"
  74. EndFunc
  75.  
  76. Func boolPixelSearch($pixel1, $pixel2, $pixel3, $variation = 10)
  77.     If _ColorCheck(_GetPixelColor($pixel1[0], $pixel1[1]), $pixel1[2], $variation) And _ColorCheck(_GetPixelColor($pixel2[0], $pixel2[1]), $pixel2[2], $variation) And _ColorCheck(_GetPixelColor($pixel3[0], $pixel3[1]), $pixel3[2], $variation) Then Return True
  78.     Return False
  79. EndFunc   ;==>boolPixelSearch
Add Comment
Please, Sign In to add comment