Sign in to follow this  
Followers 0
dbzfanatic

Al Bhed (from FFX) Translator!

14 posts in this topic

#1 ·  Posted (edited)

Here's a translator for Al Bhed from FFX. It's written completely in autoit and it's pretty bare-bones but it works and includes spaces and special characters like ! and ~. Supports unicode (as far as I know anyway) and capitalizes the beginning of each word. Suggestions for improvements on looks or added features or anything else are welcome, as well as helpful crticism.

Edit: oops,wrong file version...twice even><. Sorry guys, It's about 3:30 am here so I'm a bit out of it...

Update 1: Fixed bug. You can now use ctrl+a when not in the window.

Update 2: Sharing code since it's been years and I've finally gotten around to cleaning it up. Not commented but can be if asked.

#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Misc.au3>
#include <String.au3>
    #Region
    #AutoIt3Wrapper_OutFile=al bhed translator.exe
    #AutoIt3Wrapper_Compression=4
#EndRegion
    #Region ### START Koda GUI section ### Form=C:\Users\Owner\Desktop\frmAlBhed.kxf
    $frmalbhed = GUICreate("Al Bhed Translator", 459, 268, 193, 125)
    $edtenglish = GUICtrlCreateEdit("", 8, 8, 193, 185, BitOR($es_autovscroll, $es_wantreturn, $ws_vscroll))
    GUICtrlSetLimit(-1, 65535, 0)
    $edtalbhed = GUICtrlCreateEdit("", 249, 8, 193, 185, BitOR($es_autovscroll, $es_wantreturn, $ws_vscroll))
    GUICtrlSetLimit(-1, 65535, 0)
    $btntranslate = GUICtrlCreateButton("Translate!", 32, 200, 121, 25, 0)
    $btndnyhcmyda = GUICtrlCreateButton("Dnychyda!", 291, 200, 121, 25, 0)
    GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
    If WinGetState("Al Bhed Translator") = 15 AND _ispressed("11") AND _ispressed("41") Then
        msgselectall()
    EndIf
    $nmsg = GUIGetMsg()
    Switch $nmsg
        Case $gui_event_close
            Exit
        Case $btntranslate
            eng2al(GUICtrlRead($edtenglish))
        Case $btndnyhcmyda
            GUICtrlSetState($btndnyhcmyda, $gui_disable)
            GUICtrlSetState($btntranslate, $gui_disable)
            al2eng(GUICtrlRead($edtalbhed))
    EndSwitch
WEnd
    Func al2eng($sstring)
    Local $output, $char, $input = StringSplit($sstring, ""),$Y = "A",$P = "B",$L = "C",$T = "D",$A = "E",$V = "F",$K = "G",$R = "H",$E = "I",$Z = "J",$G = "K",$M = "L",$S = "M",$H = "N",$U = "O",$B = "P",$X = "Q",$N = "R",$C = "S",$D = "T",$I = "U",$J = "V",$F = "W",$Q = "X",$O = "Y",$W = "Z"
        For $iInt = 1 to $input[0]
        if $input[$iInt] = " " Then
            $output &= " "
        Elseif StringIsAlpha($input[$iInt]) Then
            $output &= Eval(String($input[$iInt]))
        Else
            $char = AscW($input[$iInt])
            $output &= ChrW($char)
        EndIf
    Next
    GUICtrlSetData($edtenglish, _stringproper($output))
    GUICtrlSetState($btndnyhcmyda, $gui_enable)
    GUICtrlSetState($btntranslate, $gui_enable)
EndFunc
    Func eng2al($sstring)
    Local $output, $char, $input = StringSplit($sstring, ""),$a = "y",$b = "p",$C = "l",$D = "t",$E = "a",$F = "v",$G = "k",$H = "r",$I = "e",$J = "z",$K = "g",$L = "m",$M = "s",$N = "h",$O = "u",$P = "b",$Q = "x",$R = "n",$S = "c",$T = "d",$U = "i",$V = "j",$W = "f",$X = "q",$Y = "o",$Z = "w"
    For $iInt = 1 to $input[0]
        if $input[$iInt] = " " Then
            $output &= " "
        Elseif StringIsAlpha($input[$iInt]) Then
            $output &= Eval(String($input[$iInt]))
        Else
            $char = AscW($input[$iInt])
            $output &= ChrW($char)
        EndIf
    Next
    GUICtrlSetData($edtalbhed, _stringproper($output))
    GUICtrlSetState($btndnyhcmyda, $gui_enable)
    GUICtrlSetState($btntranslate, $gui_enable)
EndFunc
    Func msgselectall()
    MsgBox(48, "Error", 'Please right click and choose "select all" or highlight the text with your cursor to select this control.')
EndFunc

Edited by dbzfanatic
sharing code

Share this post


Link to post
Share on other sites



#2 ·  Posted (edited)

Lol, interesting script.

Random Comment: Your website knows my IP, ISP, and OS, but for some reason thinks i'm using IE7.. lol.

Edited by dandymcgee

- Dan [Website]

Share this post


Link to post
Share on other sites

Lol, interesting script.

Random Comment: Your website knows my IP, ISP, and OS, but for some reason thinks i'm using IE7.. lol.

Well blame danasoft for that:P I got that lil pic from then, I only wrote the counter on the front page and a few of the interior pages (only 3 that are actually viewed in the forums). Thanks for the comment btw, and yeah it's interesting but I was bored and playing FFX so I thought "there are a lot of web translators, why not a program?" :)

Share this post


Link to post
Share on other sites

#4 ·  Posted (edited)

Wow, cool :D

Never tought it could be this cool ^^,

If I can share my tought, its the same as this?

#RequireAdmin
#AutoIt3Wrapper_Version = 6.2

$GUI = GUICreate("iSass v6.2 - Updates at 'i' >>", 420, 290, -1, -1)

$TextToSassLabel = GUICtrlCreateLabel("Text -> Sass", 10, 10, 150, 30)
$TextInput = GUICtrlCreateInput("", 10, 50, 400, 20)
$CalcTextToSassButton = GUICtrlCreateButton("Calculate!", 10, 79)
$SassedTextInput = GUICtrlCreateInput("", 10, 115, 400, 20, BitOR("", 2048))
$CopySassedText = GUICtrlCreateButton("Copy", 70, 79)
$ShowSassedText = GUICtrlCreateButton("Show", 107, 79)
$ClearSassed = GUICtrlCreateButton("Clear", 147, 79)

$SassToTextLabel = GUICtrlCreateLabel("Text <- Sass", 10, 150, 150, 30)
$SassInput = GUICtrlCreateInput("", 10, 190, 400, 20)
$CalcSassToTextButton = GUICtrlCreateButton("Calculate!", 10, 220)
$TextFromSassInput = GUICtrlCreateInput("", 10, 259, 400, 20, BitOR("", 2048))
$CopyTextFromSass = GUICtrlCreateButton("Copy", 70, 220)
$ShowTextFromSass = GUICtrlCreateButton("Show", 107, 220)
$ClearText = GUICtrlCreateButton("Clear", 147, 220)

$xx = GUICtrlCreateButton("?", 390, 10, 20, 20)
$xxx = GUICtrlCreateButton("i", 370, 10, 20, 20)

GUICtrlSetFont($TextToSassLabel, 20, "", "", "Impact")
GUICtrlSetFont($SassToTextLabel, 20, "", "", "Impact")
GUISetState()
While 1
    $nMsg = GUIGetMsg()
    Select
    Case $nMsg = -3
        Exit
    Case $nMsg = $CalcTextToSassButton
        $Read_Text = GUICtrlRead($TextInput)
        $SASS = _TextToSass($Read_Text)
        GUICtrlSetData($SassedTextInput, $SASS)
    Case $nMsg = $CalcSassToTextButton
        $Read_Sass = GUICtrlRead($SassInput)
        $TEXT = _SassToText($Read_SASS)
        GUICtrlSetData($TextFromSassInput, $TEXT)
    Case $nMsg = $CopySassedText
        $Read_Sassed_Text = GUICtrlRead($SassedTextInput)
        ClipPut($Read_Sassed_Text)
    Case $nMsg = $CopyTextFromSass
        $Read_Text_From_Sass = GUICtrlRead($TextFromSassInput)
        ClipPut($Read_Text_From_Sass)
    Case $nMsg = $ShowSassedText
        $Read_Sassed_Text_2 = GUICtrlRead($SassedTextInput)
        MsgBox(64, "iSass", $Read_Sassed_Text_2)
    Case $nMsg = $ShowTextFromSass
        $Read_Text_From_Sass_2 = GUICtrlRead($TextFromSassInput)
        MsgBox(64, "iSass", $Read_Text_From_Sass_2)
    Case $nMsg = $ClearSassed
        GUICtrlSetData($TextInput, "")
        GUICtrlSetState($TextInput, 256)
    Case $nMsg = $ClearText
        GUICtrlSetData($SassInput, "")
        GUICtrlSetState($SassInput, 256)
    Case $nMsg = $xx
        _About()
    Case $nMsg = $xxx
        _Updates()
    EndSelect
WEnd

Func _TextToSass($nText)
    $n_Text = GUICtrlRead($TextInput)
    $n_Text = StringReplace($n_Text, "a", "001", "", 1)
    $n_Text = StringReplace($n_Text, "A", "107", "", 1)
    $n_Text = StringReplace($n_Text, "b", "013", "", 1)
    $n_Text = StringReplace($n_Text, "B", "114", "", 1)
    $n_Text = StringReplace($n_Text, "c", "025", "", 1)
    $n_Text = StringReplace($n_Text, "C", "126", "", 1)
    $n_Text = StringReplace($n_Text, "d", "037", "", 1)
    $n_Text = StringReplace($n_Text, "D", "138", "", 1)
    $n_Text = StringReplace($n_Text, "e", "049", "", 1)
    $n_Text = StringReplace($n_Text, "E", "104", "", 1)
    $n_Text = StringReplace($n_Text, "f", "051", "", 1)
    $n_Text = StringReplace($n_Text, "F", "152", "", 1)
    $n_Text = StringReplace($n_Text, "g", "063", "", 1)
    $n_Text = StringReplace($n_Text, "G", "164", "", 1)
    $n_Text = StringReplace($n_Text, "h", "075", "", 1)
    $n_Text = StringReplace($n_Text, "H", "176", "", 1)
    $n_Text = StringReplace($n_Text, "i", "087", "", 1)
    $n_Text = StringReplace($n_Text, "I", "188", "", 1)
    $n_Text = StringReplace($n_Text, "j", "099", "", 1)
    $n_Text = StringReplace($n_Text, "J", "19", "", 1)
    $n_Text = StringReplace($n_Text, "k", "202", "", 1)
    $n_Text = StringReplace($n_Text, "K", "302", "", 1)
    $n_Text = StringReplace($n_Text, "l", "213", "", 1)
    $n_Text = StringReplace($n_Text, "L", "314", "", 1)
    $n_Text = StringReplace($n_Text, "m", "225", "", 1)
    $n_Text = StringReplace($n_Text, "M", "326", "", 1)
    $n_Text = StringReplace($n_Text, "n", "237", "", 1)
    $n_Text = StringReplace($n_Text, "N", "338", "", 1)
    $n_Text = StringReplace($n_Text, "o", "249", "", 1)
    $n_Text = StringReplace($n_Text, "O", "34", "", 1)
    $n_Text = StringReplace($n_Text, "p", "251", "", 1)
    $n_Text = StringReplace($n_Text, "P", "352", "", 1)
    $n_Text = StringReplace($n_Text, "q", "26", "", 1)
    $n_Text = StringReplace($n_Text, "Q", "364", "", 1)
    $n_Text = StringReplace($n_Text, "r", "275", "", 1)
    $n_Text = StringReplace($n_Text, "R", "376", "", 1)
    $n_Text = StringReplace($n_Text, "s", "287", "", 1)
    $n_Text = StringReplace($n_Text, "S", "388", "", 1)
    $n_Text = StringReplace($n_Text, "t", "299", "", 1)
    $n_Text = StringReplace($n_Text, "T", "39", "", 1)
    $n_Text = StringReplace($n_Text, "u", "401", "", 1)
    $n_Text = StringReplace($n_Text, "U", "502", "", 1)
    $n_Text = StringReplace($n_Text, "v", "413", "", 1)
    $n_Text = StringReplace($n_Text, "V", "514", "", 1)
    $n_Text = StringReplace($n_Text, "w", "425", "", 1)
    $n_Text = StringReplace($n_Text, "W", "526", "", 1)
    $n_Text = StringReplace($n_Text, "x", "437", "", 1)
    $n_Text = StringReplace($n_Text, "X", "538", "", 1)
    $n_Text = StringReplace($n_Text, "y", "449", "", 1)
    $n_Text = StringReplace($n_Text, "Y", "541", "", 1)
    $n_Text = StringReplace($n_Text, "z", "451", "", 1)
    $n_Text = StringReplace($n_Text, "Z", "552", "", 1)
    $n_Text = StringReplace($n_Text, " ", "975", "", 1)
    $n_Text = StringReplace($n_Text, "!", "574", "", 1)
    $n_Text = StringReplace($n_Text, "@", "585", "", 1)
    $n_Text = StringReplace($n_Text, "#", "596", "", 1)
    $n_Text = StringReplace($n_Text, "$", "607", "", 1)
    $n_Text = StringReplace($n_Text, "%", "618", "", 1)
    $n_Text = StringReplace($n_Text, "^", "629", "", 1)
    $n_Text = StringReplace($n_Text, "&", "63", "", 1)
    $n_Text = StringReplace($n_Text, "*", "64", "", 1)
    $n_Text = StringReplace($n_Text, "(", "652", "", 1)
    $n_Text = StringReplace($n_Text, ")", "663", "", 1)
    $n_Text = StringReplace($n_Text, "-", "674", "", 1)
    $n_Text = StringReplace($n_Text, "_", "685", "", 1)
    $n_Text = StringReplace($n_Text, "=", "696", "", 1)
    $n_Text = StringReplace($n_Text, "+", "707", "", 1)
    $n_Text = StringReplace($n_Text, "[", "718", "", 1)
    $n_Text = StringReplace($n_Text, "{", "729", "", 1)
    $n_Text = StringReplace($n_Text, "]", "73", "", 1)
    $n_Text = StringReplace($n_Text, "}", "741", "", 1)
    $n_Text = StringReplace($n_Text, ";", "752", "", 1)
    $n_Text = StringReplace($n_Text, ":", "763", "", 1)
    $n_Text = StringReplace($n_Text, "'", "774", "", 1)
    $n_Text = StringReplace($n_Text, '"', "785", "", 1)
    $n_Text = StringReplace($n_Text, "\", "796", "", 1)
    $n_Text = StringReplace($n_Text, "|", "807", "", 1)
    $n_Text = StringReplace($n_Text, ",", "818", "", 1)
    $n_Text = StringReplace($n_Text, "<", "829", "", 1)
    $n_Text = StringReplace($n_Text, ".", "838", "", 1)
    $n_Text = StringReplace($n_Text, ">", "845", "", 1)
    $n_Text = StringReplace($n_Text, "/", "852", "", 1)
    $n_Text = StringReplace($n_Text, "?", "863", "", 1)
    Return $n_Text
EndFunc

Func _SassToText($nSass)
    $n_Sass = GUICtrlRead($SassInput)
    $n_Sass = StringReplace($n_Sass, "001", "a", "", 1)
    $n_Sass = StringReplace($n_Sass, "107", "A", "", 1)
    $n_Sass = StringReplace($n_Sass, "013", "b", "", 1)
    $n_Sass = StringReplace($n_Sass, "114", "B", "", 1)
    $n_Sass = StringReplace($n_Sass, "025", "c", "", 1)
    $n_Sass = StringReplace($n_Sass, "126", "C", "", 1)
    $n_Sass = StringReplace($n_Sass, "037", "d", "", 1)
    $n_Sass = StringReplace($n_Sass, "138", "D", "", 1)
    $n_Sass = StringReplace($n_Sass, "049", "e", "", 1)
    $n_Sass = StringReplace($n_Sass, "104", "E", "", 1)
    $n_Sass = StringReplace($n_Sass, "051", "f", "", 1)
    $n_Sass = StringReplace($n_Sass, "152", "F", "", 1)
    $n_Sass = StringReplace($n_Sass, "063", "g", "", 1)
    $n_Sass = StringReplace($n_Sass, "164", "G", "", 1)
    $n_Sass = StringReplace($n_Sass, "075", "h", "", 1)
    $n_Sass = StringReplace($n_Sass, "176", "H", "", 1)
    $n_Sass = StringReplace($n_Sass, "087", "i", "", 1)
    $n_Sass = StringReplace($n_Sass, "188", "I", "", 1)
    $n_Sass = StringReplace($n_Sass, "099", "j", "", 1)
    $n_Sass = StringReplace($n_Sass, "19", "J", "", 1)
    $n_Sass = StringReplace($n_Sass, "202", "k", "", 1)
    $n_Sass = StringReplace($n_Sass, "302", "K", "", 1)
    $n_Sass = StringReplace($n_Sass, "213", "l", "", 1)
    $n_Sass = StringReplace($n_Sass, "314", "L", "", 1)
    $n_Sass = StringReplace($n_Sass, "225", "m", "", 1)
    $n_Sass = StringReplace($n_Sass, "326", "M", "", 1)
    $n_Sass = StringReplace($n_Sass, "237", "n", "", 1)
    $n_Sass = StringReplace($n_Sass, "338", "N", "", 1)
    $n_Sass = StringReplace($n_Sass, "249", "o", "", 1)
    $n_Sass = StringReplace($n_Sass, "342", "O", "", 1)
    $n_Sass = StringReplace($n_Sass, "251", "p", "", 1)
    $n_Sass = StringReplace($n_Sass, "352", "P", "", 1)
    $n_Sass = StringReplace($n_Sass, "26", "q", "", 1)
    $n_Sass = StringReplace($n_Sass, "364", "Q", "", 1)
    $n_Sass = StringReplace($n_Sass, "275", "r", "", 1)
    $n_Sass = StringReplace($n_Sass, "376", "R", "", 1)
    $n_Sass = StringReplace($n_Sass, "287", "s", "", 1)
    $n_Sass = StringReplace($n_Sass, "388", "S", "", 1)
    $n_Sass = StringReplace($n_Sass, "299", "t", "", 1)
    $n_Sass = StringReplace($n_Sass, "39", "T", "", 1)
    $n_Sass = StringReplace($n_Sass, "401", "u", "", 1)
    $n_Sass = StringReplace($n_Sass, "502", "U", "", 1)
    $n_Sass = StringReplace($n_Sass, "413", "v", "", 1)
    $n_Sass = StringReplace($n_Sass, "514", "V", "", 1)
    $n_Sass = StringReplace($n_Sass, "425", "w", "", 1)
    $n_Sass = StringReplace($n_Sass, "526", "W", "", 1)
    $n_Sass = StringReplace($n_Sass, "437", "x", "", 1)
    $n_Sass = StringReplace($n_Sass, "538", "X", "", 1)
    $n_Sass = StringReplace($n_Sass, "449", "y", "", 1)
    $n_Sass = StringReplace($n_Sass, "541", "Y", "", 1)
    $n_Sass = StringReplace($n_Sass, "451", "z", "", 1)
    $n_Sass = StringReplace($n_Sass, "552", "Z", "", 1)
    $n_Sass = StringReplace($n_Sass, "975", " ", "", 1)
    $n_Sass = StringReplace($n_Sass, "574", "!", "", 1)
    $n_Sass = StringReplace($n_Sass, "585", "@", "", 1)
    $n_Sass = StringReplace($n_Sass, "596", "#", "", 1)
    $n_Sass = StringReplace($n_Sass, "607", "$", "", 1)
    $n_Sass = StringReplace($n_Sass, "618", "%", "", 1)
    $n_Sass = StringReplace($n_Sass, "629", "^", "", 1)
    $n_Sass = StringReplace($n_Sass, "63", "&", "", 1)
    $n_Sass = StringReplace($n_Sass, "64", "*", "", 1)
    $n_Sass = StringReplace($n_Sass, "652", "(", "", 1)
    $n_Sass = StringReplace($n_Sass, "663", ")", "", 1)
    $n_Sass = StringReplace($n_Sass, "674", "-", "", 1)
    $n_Sass = StringReplace($n_Sass, "685", "_", "", 1)
    $n_Sass = StringReplace($n_Sass, "696", "=", "", 1)
    $n_Sass = StringReplace($n_Sass, "707", "+", "", 1)
    $n_Sass = StringReplace($n_Sass, "718", "[", "", 1)
    $n_Sass = StringReplace($n_Sass, "729", "{", "", 1)
    $n_Sass = StringReplace($n_Sass, "73", "]", "", 1)
    $n_Sass = StringReplace($n_Sass, "741", "}", "", 1)
    $n_Sass = StringReplace($n_Sass, "752", ";", "", 1)
    $n_Sass = StringReplace($n_Sass, "763", ":", "", 1)
    $n_Sass = StringReplace($n_Sass, "774", "'", "", 1)
    $n_Sass = StringReplace($n_Sass, "785", '"', "", 1)
    $n_Sass = StringReplace($n_Sass, "796", "\", "", 1)
    $n_Sass = StringReplace($n_Sass, "807", "|", "", 1)
    $n_Sass = StringReplace($n_Sass, "818", ",", "", 1)
    $n_Sass = StringReplace($n_Sass, "829", "<", "", 1)
    $n_Sass = StringReplace($n_Sass, "83", ".", "", 1)
    $n_Sass = StringReplace($n_Sass, "845", ">", "", 1)
    $n_Sass = StringReplace($n_Sass, "852", "/", "", 1)
    $n_Sass = StringReplace($n_Sass, "863", "?", "", 1)
    Return $n_Sass
EndFunc

Func _About()
    GUISetState(@SW_DISABLE, $GUI)
    $GUI2 = GUICreate("About", 200, 125)
    $Edit = GUICtrlCreateEdit("", 10, 10, 0, 0, BitOR(16777216, 2048))
    GUICtrlSetData($Edit, "Credits to:" & @CRLF & "Almar Mulder" & @CRLF & "almar_mulder@live.nl" & @CRLF & @CRLF & _
                        "If you find any bugs or wrong ReSassed words please let me know @ almar_mulder@live.nl" & _
                        @CRLF & @CRLF & "Have Fun!")
    
    GUISetState()
    While 2
        $nMsg2 = GUIGetMsg()
        Select
        Case $nMsg2 = -3
            ExitLoop
        EndSelect
    WEnd
    GUIDelete($GUI2)
    GUISetState(@SW_ENABLE, $GUI)
    GUISetState(@SW_RESTORE, $GUI)
EndFunc

Func _Updates()
    $Version = "1.0: First builds and tests" & @CRLF
    $Version &= "2.0: Added Copy Button" & @CRLF
    $Version &= "3.0: Added Automatic Scroll for too long words. (DELETED)" & @CRLF
    $Version &= "4.0: Added Show Button" & @CRLF
    $Version &= "5.0: Added Clear Button + Focus when Clear is pressed" & @CRLF
    $Version &= "5.5: Added ? Button" & @CRLF
    $Version &= "5.6: Added more characters" & @CRLF
    $Version &= "5.7: Fixed 'uu'" & @CRLF
    $Version &= "5.8: Fixed '*c'" & @CRLF
    $Version &= "5.9: Fixed ' z'" & @CRLF
    $Version &= "6.0: Added i Button" & @CRLF
    $Version &= "6.1: Fixed ' w'" & @CRLF
    $Version &= "6.2: Fixed whole ' '" & @CRLF
    GUISetState(@SW_DISABLE, $GUI)
    MsgBox(64, "iSass v6.2", "Updates:" & @CRLF & $Version)
    If @error = 0 Then
        GUISetState(@SW_ENABLE, $GUI)
        GUISetState(@SW_RESTORE, $GUI)
    EndIf
EndFunc

There are a lot bugs in there, so I gave up.

But pretty nice work here ^^,

AlmarM

Edited by AlmarM

Minesweeper

A minesweeper game created in autoit, source available.

_Mouse_UDF

An UDF for registering functions to mouse events, made in pure autoit.

2D Hitbox Editor

A 2D hitbox editor for quick creation of 2D sphere and rectangle hitboxes.

Share this post


Link to post
Share on other sites

Wow, cool :D

Never tought it could be this cool ^^,

If I can share my tought, its the same as this?

#RequireAdmin
#AutoIt3Wrapper_Version = 6.2

$GUI = GUICreate("iSass v6.2 - Updates at 'i' >>", 420, 290, -1, -1)

$TextToSassLabel = GUICtrlCreateLabel("Text -> Sass", 10, 10, 150, 30)
$TextInput = GUICtrlCreateInput("", 10, 50, 400, 20)
$CalcTextToSassButton = GUICtrlCreateButton("Calculate!", 10, 79)
$SassedTextInput = GUICtrlCreateInput("", 10, 115, 400, 20, BitOR("", 2048))
$CopySassedText = GUICtrlCreateButton("Copy", 70, 79)
$ShowSassedText = GUICtrlCreateButton("Show", 107, 79)
$ClearSassed = GUICtrlCreateButton("Clear", 147, 79)

$SassToTextLabel = GUICtrlCreateLabel("Text <- Sass", 10, 150, 150, 30)
$SassInput = GUICtrlCreateInput("", 10, 190, 400, 20)
$CalcSassToTextButton = GUICtrlCreateButton("Calculate!", 10, 220)
$TextFromSassInput = GUICtrlCreateInput("", 10, 259, 400, 20, BitOR("", 2048))
$CopyTextFromSass = GUICtrlCreateButton("Copy", 70, 220)
$ShowTextFromSass = GUICtrlCreateButton("Show", 107, 220)
$ClearText = GUICtrlCreateButton("Clear", 147, 220)

$xx = GUICtrlCreateButton("?", 390, 10, 20, 20)
$xxx = GUICtrlCreateButton("i", 370, 10, 20, 20)

GUICtrlSetFont($TextToSassLabel, 20, "", "", "Impact")
GUICtrlSetFont($SassToTextLabel, 20, "", "", "Impact")
GUISetState()
While 1
    $nMsg = GUIGetMsg()
    Select
    Case $nMsg = -3
        Exit
    Case $nMsg = $CalcTextToSassButton
        $Read_Text = GUICtrlRead($TextInput)
        $SASS = _TextToSass($Read_Text)
        GUICtrlSetData($SassedTextInput, $SASS)
    Case $nMsg = $CalcSassToTextButton
        $Read_Sass = GUICtrlRead($SassInput)
        $TEXT = _SassToText($Read_SASS)
        GUICtrlSetData($TextFromSassInput, $TEXT)
    Case $nMsg = $CopySassedText
        $Read_Sassed_Text = GUICtrlRead($SassedTextInput)
        ClipPut($Read_Sassed_Text)
    Case $nMsg = $CopyTextFromSass
        $Read_Text_From_Sass = GUICtrlRead($TextFromSassInput)
        ClipPut($Read_Text_From_Sass)
    Case $nMsg = $ShowSassedText
        $Read_Sassed_Text_2 = GUICtrlRead($SassedTextInput)
        MsgBox(64, "iSass", $Read_Sassed_Text_2)
    Case $nMsg = $ShowTextFromSass
        $Read_Text_From_Sass_2 = GUICtrlRead($TextFromSassInput)
        MsgBox(64, "iSass", $Read_Text_From_Sass_2)
    Case $nMsg = $ClearSassed
        GUICtrlSetData($TextInput, "")
        GUICtrlSetState($TextInput, 256)
    Case $nMsg = $ClearText
        GUICtrlSetData($SassInput, "")
        GUICtrlSetState($SassInput, 256)
    Case $nMsg = $xx
        _About()
    Case $nMsg = $xxx
        _Updates()
    EndSelect
WEnd

Func _TextToSass($nText)
    $n_Text = GUICtrlRead($TextInput)
    $n_Text = StringReplace($n_Text, "a", "001", "", 1)
    $n_Text = StringReplace($n_Text, "A", "107", "", 1)
    $n_Text = StringReplace($n_Text, "b", "013", "", 1)
    $n_Text = StringReplace($n_Text, "B", "114", "", 1)
    $n_Text = StringReplace($n_Text, "c", "025", "", 1)
    $n_Text = StringReplace($n_Text, "C", "126", "", 1)
    $n_Text = StringReplace($n_Text, "d", "037", "", 1)
    $n_Text = StringReplace($n_Text, "D", "138", "", 1)
    $n_Text = StringReplace($n_Text, "e", "049", "", 1)
    $n_Text = StringReplace($n_Text, "E", "104", "", 1)
    $n_Text = StringReplace($n_Text, "f", "051", "", 1)
    $n_Text = StringReplace($n_Text, "F", "152", "", 1)
    $n_Text = StringReplace($n_Text, "g", "063", "", 1)
    $n_Text = StringReplace($n_Text, "G", "164", "", 1)
    $n_Text = StringReplace($n_Text, "h", "075", "", 1)
    $n_Text = StringReplace($n_Text, "H", "176", "", 1)
    $n_Text = StringReplace($n_Text, "i", "087", "", 1)
    $n_Text = StringReplace($n_Text, "I", "188", "", 1)
    $n_Text = StringReplace($n_Text, "j", "099", "", 1)
    $n_Text = StringReplace($n_Text, "J", "19", "", 1)
    $n_Text = StringReplace($n_Text, "k", "202", "", 1)
    $n_Text = StringReplace($n_Text, "K", "302", "", 1)
    $n_Text = StringReplace($n_Text, "l", "213", "", 1)
    $n_Text = StringReplace($n_Text, "L", "314", "", 1)
    $n_Text = StringReplace($n_Text, "m", "225", "", 1)
    $n_Text = StringReplace($n_Text, "M", "326", "", 1)
    $n_Text = StringReplace($n_Text, "n", "237", "", 1)
    $n_Text = StringReplace($n_Text, "N", "338", "", 1)
    $n_Text = StringReplace($n_Text, "o", "249", "", 1)
    $n_Text = StringReplace($n_Text, "O", "34", "", 1)
    $n_Text = StringReplace($n_Text, "p", "251", "", 1)
    $n_Text = StringReplace($n_Text, "P", "352", "", 1)
    $n_Text = StringReplace($n_Text, "q", "26", "", 1)
    $n_Text = StringReplace($n_Text, "Q", "364", "", 1)
    $n_Text = StringReplace($n_Text, "r", "275", "", 1)
    $n_Text = StringReplace($n_Text, "R", "376", "", 1)
    $n_Text = StringReplace($n_Text, "s", "287", "", 1)
    $n_Text = StringReplace($n_Text, "S", "388", "", 1)
    $n_Text = StringReplace($n_Text, "t", "299", "", 1)
    $n_Text = StringReplace($n_Text, "T", "39", "", 1)
    $n_Text = StringReplace($n_Text, "u", "401", "", 1)
    $n_Text = StringReplace($n_Text, "U", "502", "", 1)
    $n_Text = StringReplace($n_Text, "v", "413", "", 1)
    $n_Text = StringReplace($n_Text, "V", "514", "", 1)
    $n_Text = StringReplace($n_Text, "w", "425", "", 1)
    $n_Text = StringReplace($n_Text, "W", "526", "", 1)
    $n_Text = StringReplace($n_Text, "x", "437", "", 1)
    $n_Text = StringReplace($n_Text, "X", "538", "", 1)
    $n_Text = StringReplace($n_Text, "y", "449", "", 1)
    $n_Text = StringReplace($n_Text, "Y", "541", "", 1)
    $n_Text = StringReplace($n_Text, "z", "451", "", 1)
    $n_Text = StringReplace($n_Text, "Z", "552", "", 1)
    $n_Text = StringReplace($n_Text, " ", "975", "", 1)
    $n_Text = StringReplace($n_Text, "!", "574", "", 1)
    $n_Text = StringReplace($n_Text, "@", "585", "", 1)
    $n_Text = StringReplace($n_Text, "#", "596", "", 1)
    $n_Text = StringReplace($n_Text, "$", "607", "", 1)
    $n_Text = StringReplace($n_Text, "%", "618", "", 1)
    $n_Text = StringReplace($n_Text, "^", "629", "", 1)
    $n_Text = StringReplace($n_Text, "&", "63", "", 1)
    $n_Text = StringReplace($n_Text, "*", "64", "", 1)
    $n_Text = StringReplace($n_Text, "(", "652", "", 1)
    $n_Text = StringReplace($n_Text, ")", "663", "", 1)
    $n_Text = StringReplace($n_Text, "-", "674", "", 1)
    $n_Text = StringReplace($n_Text, "_", "685", "", 1)
    $n_Text = StringReplace($n_Text, "=", "696", "", 1)
    $n_Text = StringReplace($n_Text, "+", "707", "", 1)
    $n_Text = StringReplace($n_Text, "[", "718", "", 1)
    $n_Text = StringReplace($n_Text, "{", "729", "", 1)
    $n_Text = StringReplace($n_Text, "]", "73", "", 1)
    $n_Text = StringReplace($n_Text, "}", "741", "", 1)
    $n_Text = StringReplace($n_Text, ";", "752", "", 1)
    $n_Text = StringReplace($n_Text, ":", "763", "", 1)
    $n_Text = StringReplace($n_Text, "'", "774", "", 1)
    $n_Text = StringReplace($n_Text, '"', "785", "", 1)
    $n_Text = StringReplace($n_Text, "\", "796", "", 1)
    $n_Text = StringReplace($n_Text, "|", "807", "", 1)
    $n_Text = StringReplace($n_Text, ",", "818", "", 1)
    $n_Text = StringReplace($n_Text, "<", "829", "", 1)
    $n_Text = StringReplace($n_Text, ".", "838", "", 1)
    $n_Text = StringReplace($n_Text, ">", "845", "", 1)
    $n_Text = StringReplace($n_Text, "/", "852", "", 1)
    $n_Text = StringReplace($n_Text, "?", "863", "", 1)
    Return $n_Text
EndFunc

Func _SassToText($nSass)
    $n_Sass = GUICtrlRead($SassInput)
    $n_Sass = StringReplace($n_Sass, "001", "a", "", 1)
    $n_Sass = StringReplace($n_Sass, "107", "A", "", 1)
    $n_Sass = StringReplace($n_Sass, "013", "b", "", 1)
    $n_Sass = StringReplace($n_Sass, "114", "B", "", 1)
    $n_Sass = StringReplace($n_Sass, "025", "c", "", 1)
    $n_Sass = StringReplace($n_Sass, "126", "C", "", 1)
    $n_Sass = StringReplace($n_Sass, "037", "d", "", 1)
    $n_Sass = StringReplace($n_Sass, "138", "D", "", 1)
    $n_Sass = StringReplace($n_Sass, "049", "e", "", 1)
    $n_Sass = StringReplace($n_Sass, "104", "E", "", 1)
    $n_Sass = StringReplace($n_Sass, "051", "f", "", 1)
    $n_Sass = StringReplace($n_Sass, "152", "F", "", 1)
    $n_Sass = StringReplace($n_Sass, "063", "g", "", 1)
    $n_Sass = StringReplace($n_Sass, "164", "G", "", 1)
    $n_Sass = StringReplace($n_Sass, "075", "h", "", 1)
    $n_Sass = StringReplace($n_Sass, "176", "H", "", 1)
    $n_Sass = StringReplace($n_Sass, "087", "i", "", 1)
    $n_Sass = StringReplace($n_Sass, "188", "I", "", 1)
    $n_Sass = StringReplace($n_Sass, "099", "j", "", 1)
    $n_Sass = StringReplace($n_Sass, "19", "J", "", 1)
    $n_Sass = StringReplace($n_Sass, "202", "k", "", 1)
    $n_Sass = StringReplace($n_Sass, "302", "K", "", 1)
    $n_Sass = StringReplace($n_Sass, "213", "l", "", 1)
    $n_Sass = StringReplace($n_Sass, "314", "L", "", 1)
    $n_Sass = StringReplace($n_Sass, "225", "m", "", 1)
    $n_Sass = StringReplace($n_Sass, "326", "M", "", 1)
    $n_Sass = StringReplace($n_Sass, "237", "n", "", 1)
    $n_Sass = StringReplace($n_Sass, "338", "N", "", 1)
    $n_Sass = StringReplace($n_Sass, "249", "o", "", 1)
    $n_Sass = StringReplace($n_Sass, "342", "O", "", 1)
    $n_Sass = StringReplace($n_Sass, "251", "p", "", 1)
    $n_Sass = StringReplace($n_Sass, "352", "P", "", 1)
    $n_Sass = StringReplace($n_Sass, "26", "q", "", 1)
    $n_Sass = StringReplace($n_Sass, "364", "Q", "", 1)
    $n_Sass = StringReplace($n_Sass, "275", "r", "", 1)
    $n_Sass = StringReplace($n_Sass, "376", "R", "", 1)
    $n_Sass = StringReplace($n_Sass, "287", "s", "", 1)
    $n_Sass = StringReplace($n_Sass, "388", "S", "", 1)
    $n_Sass = StringReplace($n_Sass, "299", "t", "", 1)
    $n_Sass = StringReplace($n_Sass, "39", "T", "", 1)
    $n_Sass = StringReplace($n_Sass, "401", "u", "", 1)
    $n_Sass = StringReplace($n_Sass, "502", "U", "", 1)
    $n_Sass = StringReplace($n_Sass, "413", "v", "", 1)
    $n_Sass = StringReplace($n_Sass, "514", "V", "", 1)
    $n_Sass = StringReplace($n_Sass, "425", "w", "", 1)
    $n_Sass = StringReplace($n_Sass, "526", "W", "", 1)
    $n_Sass = StringReplace($n_Sass, "437", "x", "", 1)
    $n_Sass = StringReplace($n_Sass, "538", "X", "", 1)
    $n_Sass = StringReplace($n_Sass, "449", "y", "", 1)
    $n_Sass = StringReplace($n_Sass, "541", "Y", "", 1)
    $n_Sass = StringReplace($n_Sass, "451", "z", "", 1)
    $n_Sass = StringReplace($n_Sass, "552", "Z", "", 1)
    $n_Sass = StringReplace($n_Sass, "975", " ", "", 1)
    $n_Sass = StringReplace($n_Sass, "574", "!", "", 1)
    $n_Sass = StringReplace($n_Sass, "585", "@", "", 1)
    $n_Sass = StringReplace($n_Sass, "596", "#", "", 1)
    $n_Sass = StringReplace($n_Sass, "607", "$", "", 1)
    $n_Sass = StringReplace($n_Sass, "618", "%", "", 1)
    $n_Sass = StringReplace($n_Sass, "629", "^", "", 1)
    $n_Sass = StringReplace($n_Sass, "63", "&", "", 1)
    $n_Sass = StringReplace($n_Sass, "64", "*", "", 1)
    $n_Sass = StringReplace($n_Sass, "652", "(", "", 1)
    $n_Sass = StringReplace($n_Sass, "663", ")", "", 1)
    $n_Sass = StringReplace($n_Sass, "674", "-", "", 1)
    $n_Sass = StringReplace($n_Sass, "685", "_", "", 1)
    $n_Sass = StringReplace($n_Sass, "696", "=", "", 1)
    $n_Sass = StringReplace($n_Sass, "707", "+", "", 1)
    $n_Sass = StringReplace($n_Sass, "718", "[", "", 1)
    $n_Sass = StringReplace($n_Sass, "729", "{", "", 1)
    $n_Sass = StringReplace($n_Sass, "73", "]", "", 1)
    $n_Sass = StringReplace($n_Sass, "741", "}", "", 1)
    $n_Sass = StringReplace($n_Sass, "752", ";", "", 1)
    $n_Sass = StringReplace($n_Sass, "763", ":", "", 1)
    $n_Sass = StringReplace($n_Sass, "774", "'", "", 1)
    $n_Sass = StringReplace($n_Sass, "785", '"', "", 1)
    $n_Sass = StringReplace($n_Sass, "796", "\", "", 1)
    $n_Sass = StringReplace($n_Sass, "807", "|", "", 1)
    $n_Sass = StringReplace($n_Sass, "818", ",", "", 1)
    $n_Sass = StringReplace($n_Sass, "829", "<", "", 1)
    $n_Sass = StringReplace($n_Sass, "83", ".", "", 1)
    $n_Sass = StringReplace($n_Sass, "845", ">", "", 1)
    $n_Sass = StringReplace($n_Sass, "852", "/", "", 1)
    $n_Sass = StringReplace($n_Sass, "863", "?", "", 1)
    Return $n_Sass
EndFunc

Func _About()
    GUISetState(@SW_DISABLE, $GUI)
    $GUI2 = GUICreate("About", 200, 125)
    $Edit = GUICtrlCreateEdit("", 10, 10, 0, 0, BitOR(16777216, 2048))
    GUICtrlSetData($Edit, "Credits to:" & @CRLF & "Almar Mulder" & @CRLF & "almar_mulder@live.nl" & @CRLF & @CRLF & _
                        "If you find any bugs or wrong ReSassed words please let me know @ almar_mulder@live.nl" & _
                        @CRLF & @CRLF & "Have Fun!")
    
    GUISetState()
    While 2
        $nMsg2 = GUIGetMsg()
        Select
        Case $nMsg2 = -3
            ExitLoop
        EndSelect
    WEnd
    GUIDelete($GUI2)
    GUISetState(@SW_ENABLE, $GUI)
    GUISetState(@SW_RESTORE, $GUI)
EndFunc

Func _Updates()
    $Version = "1.0: First builds and tests" & @CRLF
    $Version &= "2.0: Added Copy Button" & @CRLF
    $Version &= "3.0: Added Automatic Scroll for too long words. (DELETED)" & @CRLF
    $Version &= "4.0: Added Show Button" & @CRLF
    $Version &= "5.0: Added Clear Button + Focus when Clear is pressed" & @CRLF
    $Version &= "5.5: Added ? Button" & @CRLF
    $Version &= "5.6: Added more characters" & @CRLF
    $Version &= "5.7: Fixed 'uu'" & @CRLF
    $Version &= "5.8: Fixed '*c'" & @CRLF
    $Version &= "5.9: Fixed ' z'" & @CRLF
    $Version &= "6.0: Added i Button" & @CRLF
    $Version &= "6.1: Fixed ' w'" & @CRLF
    $Version &= "6.2: Fixed whole ' '" & @CRLF
    GUISetState(@SW_DISABLE, $GUI)
    MsgBox(64, "iSass v6.2", "Updates:" & @CRLF & $Version)
    If @error = 0 Then
        GUISetState(@SW_ENABLE, $GUI)
        GUISetState(@SW_RESTORE, $GUI)
    EndIf
EndFunc

There are a lot bugs in there, so I gave up.

But pretty nice work here ^^,

AlmarM

Yours looks fairly similar but I used a bunch of If statements and I only translated letters. Everything else I stuck in the Else part and just copied the unicode codes for it,added it to the translated text in the proper place, and there you go. Thanks for the compliment, I'm thinking of adding pronunciation coaching (when I have an idea how to do that >.>;; )

Share this post


Link to post
Share on other sites

Haha, np.

But im Dutch, so could you explain me what "pronunciation coaching" is :)?

AlmarM


Minesweeper

A minesweeper game created in autoit, source available.

_Mouse_UDF

An UDF for registering functions to mouse events, made in pure autoit.

2D Hitbox Editor

A 2D hitbox editor for quick creation of 2D sphere and rectangle hitboxes.

Share this post


Link to post
Share on other sites

#7 ·  Posted (edited)

Sure, I just mean I plan to add something to the program so when it's translated it also shows you how to say it. Like "E moja oui" (I use that a lot with my girlfriend so I've memorized it) would have under it "ee-mow-ha-wee" or something similar. Sorry to say but this is going to be postponed considerably. I'm running vista and it decided to delete every file off my desktop without asking to do so and the source was saved there. Also I just wrote a tutorial (just today) so it might be a bit before I get this working. However, writing that tutorial gave me some ideas on improvements I could make to this.

Edit: I found a backup that was only a few days old so I have my source again! With the source and the new ideas I gained from writing my tutorial I should be able to make an enhanced version fairly soon. :)Did I mention I got my source back? (Sorry I'm excited, the backup contained 7.54GB of source,exes,pictures,etc I had created that would have been gone)

Edited by dbzfanatic

Share this post


Link to post
Share on other sites

Haha ok >_<

If I could help you with something, just let me know :P

AlmarM

P.S.

Im going to create a similiar script too :). Just with other replacements :idiot:


Minesweeper

A minesweeper game created in autoit, source available.

_Mouse_UDF

An UDF for registering functions to mouse events, made in pure autoit.

2D Hitbox Editor

A 2D hitbox editor for quick creation of 2D sphere and rectangle hitboxes.

Share this post


Link to post
Share on other sites

Sounds good, I might ask you to test or just give me some ideas on things to make it work a bit better. The reason I used the replacements I did is because it's an actual game language. It's the Al Bhed language from FFX (Final Fantasy X) but if you want my help on suggestions for the replacements I'll help you out.

Share this post


Link to post
Share on other sites

Oh well, I tought about something.

If you use my script. It sould replace 'a' with 't'.

But when you want to replace it. 'a' is being replaced with 'm' because 't' needs to be replaced by 'm'.

So I quit my program :)

AlmarM


Minesweeper

A minesweeper game created in autoit, source available.

_Mouse_UDF

An UDF for registering functions to mouse events, made in pure autoit.

2D Hitbox Editor

A 2D hitbox editor for quick creation of 2D sphere and rectangle hitboxes.

Share this post


Link to post
Share on other sites

That is where mine is superior *evil laugh* just kidding. What I did is I used StringSplit() to get each character from the edit, cycled through them to see what they were then did the replacements that way and saved the replaced characters to a different string. If you do it this way there's no cross-translation so you don't try to translate something that's already translated.

Share this post


Link to post
Share on other sites

That is where mine is superior *evil laugh* just kidding. What I did is I used StringSplit() to get each character from the edit, cycled through them to see what they were then did the replacements that way and saved the replaced characters to a different string. If you do it this way there's no cross-translation so you don't try to translate something that's already translated.

Hmmm, I tried StringReplace...

If you look at my code above. And you replace StringReplace with StringSplit what would my

Func _TextToSass($n_Text)
    Return $n_Text
EndFunc

Func _SassToText($n_Sass)
    Return $n_Sass
EndFunc

Look like?

Could you give my a small example?

Example:

A = T
B = U
C = V

Can you do that?

AlmarM


Minesweeper

A minesweeper game created in autoit, source available.

_Mouse_UDF

An UDF for registering functions to mouse events, made in pure autoit.

2D Hitbox Editor

A 2D hitbox editor for quick creation of 2D sphere and rectangle hitboxes.

Share this post


Link to post
Share on other sites

Sure.

$letters = StringSplit(GUICtrlRead($edtEdit),"")
For $i = 0 To UBound($letters) - 1
If $letters[$i] = "a" Then
$replaced &= "t"
Elseif $letters[$i] = "b" Then
$replaced &= "u"
Elseif $letters[$i] = "c" Then
$replaced &= "v"
Endif
Really primitive example but it works.

Share this post


Link to post
Share on other sites

Sorry for the necro but I've been going through old code and updating it since I have more experience and have some time now. Sharing the full code for this in the OP since I've been able to clean it up a bit (read: a LOT)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0