Einzelnen Beitrag anzeigen

RodbarFY

Registriert seit: 14. Jan 2012
1 Beiträge
 
#1

ActionScript=>Delphi

  Alt 14. Jan 2012, 23:00
Hallo,
auf der Suche nach Hilfe zur Konvertierung von ActionScript zu Delphi bin ich auf euer Forum gestossen.
Ich muss sagen, dass ich sehr selten solch ein gutes und organiesiertes Board gesehen haben

Doch nun zu meiner Frage:

Ich habe folgenden ActionScript-Code und würde diesen gerne zu Delphi konvertieren:
Code:
        public static function decrypt(param1:String, param2:Number, param3:Number) : String
        {
            var _loc_15:* = undefined;
            var _loc_16:* = undefined;
            var _loc_17:* = undefined;
            var _loc_18:String = null;
            var _loc_4:Array = [];
            var _loc_5:* = 0;
            while (_loc_5 < param1.length)
            {
               
                switch(param1.charAt(_loc_5))
                {
                    case "0":
                    {
                        _loc_4.push("0000");
                        break;
                    }
                    case "1":
                    {
                        _loc_4.push("0001");
                        break;
                    }
                    case "2":
                    {
                        _loc_4.push("0010");
                        break;
                    }
                    case "3":
                    {
                        _loc_4.push("0011");
                        break;
                    }
                    case "4":
                    {
                        _loc_4.push("0100");
                        break;
                    }
                    case "5":
                    {
                        _loc_4.push("0101");
                        break;
                    }
                    case "6":
                    {
                        _loc_4.push("0110");
                        break;
                    }
                    case "7":
                    {
                        _loc_4.push("0111");
                        break;
                    }
                    case "8":
                    {
                        _loc_4.push("1000");
                        break;
                    }
                    case "9":
                    {
                        _loc_4.push("1001");
                        break;
                    }
                    case "a":
                    {
                        _loc_4.push("1010");
                        break;
                    }
                    case "b":
                    {
                        _loc_4.push("1011");
                        break;
                    }
                    case "c":
                    {
                        _loc_4.push("1100");
                        break;
                    }
                    case "d":
                    {
                        _loc_4.push("1101");
                        break;
                    }
                    case "e":
                    {
                        _loc_4.push("1110");
                        break;
                    }
                    case "f":
                    {
                        _loc_4.push("1111");
                        break;
                    }
                    default:
                    {
                        break;
                    }
                }
                _loc_5 = _loc_5 + 1;
            }
            _loc_4 = _loc_4.join("").split("");
            var _loc_6:Array = [];
            var _loc_7:* = 0;
            while (_loc_7 < 384)
            {
               
                param2 = (param2 * 11 + 77213) % 81371;
                param3 = (param3 * 17 + 92717) % 192811;
                _loc_6[_loc_7] = (param2 + param3) % 128;
                _loc_7 = _loc_7 + 1;
            }
            var _loc_8:* = 256;
            while (_loc_8 >= 0)
            {
               
                _loc_15 = _loc_6[_loc_8];
                _loc_16 = _loc_8 % 128;
                _loc_17 = _loc_4[_loc_15];
                _loc_4[_loc_15] = _loc_4[_loc_16];
                _loc_4[_loc_16] = _loc_17;
                _loc_8 = _loc_8 - 1;
            }
            var _loc_9:* = 0;
            while (_loc_9 < 128)
            {
               
                _loc_4[_loc_9] = _loc_4[_loc_9] ^ _loc_6[_loc_9 + 256] & 1;
                _loc_9 = _loc_9 + 1;
            }
            var _loc_10:* = _loc_4.join("");
            var _loc_11:Array = [];
            var _loc_12:* = 0;
            while (_loc_12 < _loc_10.length)
            {
               
                _loc_18 = _loc_10.substr(_loc_12, 4);
                _loc_11.push(_loc_18);
                _loc_12 = _loc_12 + 4;
            }
            var _loc_13:Array = [];
            var _loc_14:* = 0;
            while (_loc_14 < _loc_11.length)
            {
               
                switch(_loc_11[_loc_14])
                {
                    case "0000":
                    {
                        _loc_13.push("0");
                        break;
                    }
                    case "0001":
                    {
                        _loc_13.push("1");
                        break;
                    }
                    case "0010":
                    {
                        _loc_13.push("2");
                        break;
                    }
                    case "0011":
                    {
                        _loc_13.push("3");
                        break;
                    }
                    case "0100":
                    {
                        _loc_13.push("4");
                        break;
                    }
                    case "0101":
                    {
                        _loc_13.push("5");
                        break;
                    }
                    case "0110":
                    {
                        _loc_13.push("6");
                        break;
                    }
                    case "0111":
                    {
                        _loc_13.push("7");
                        break;
                    }
                    case "1000":
                    {
                        _loc_13.push("8");
                        break;
                    }
                    case "1001":
                    {
                        _loc_13.push("9");
                        break;
                    }
                    case "1010":
                    {
                        _loc_13.push("a");
                        break;
                    }
                    case "1011":
                    {
                        _loc_13.push("b");
                        break;
                    }
                    case "1100":
                    {
                        _loc_13.push("c");
                        break;
                    }
                    case "1101":
                    {
                        _loc_13.push("d");
                        break;
                    }
                    case "1110":
                    {
                        _loc_13.push("e");
                        break;
                    }
                    case "1111":
                    {
                        _loc_13.push("f");
                        break;
                    }
                    default:
                    {
                        break;
                    }
                }
                _loc_14 = _loc_14 + 1;
            }
            return _loc_13.join("");
        }
Leider habe ich absolut keinen Plan von ActionScript und würde mich freuen, wenn mir jemand dabei helfen könnte den Code zu übersetzen.
Es muss nicht gleich eine komplette (ok, es wäre cooler wenn ja) Übersetzung sein, aber Hilfe wäre schon echt super.
Vielen Dank
  Mit Zitat antworten Zitat