Forum Replies Created
-
AuthorPosts
-
Yeah I was looking at your examples yesterday. I think I can try something, but I’m sure one more example won’t hurt. Learning lots from these thank you!
2018 is real. VERY PROFESSIONAL OMG YAS. Thank you!!!
Edit: Nvm. xD
Lol, that’s an understatement!
Marks example works for me with the most recent version of Monkey on Github.
Thanks!I don’t have a Mac. Boo:( I don’t think it wouldn’t be so hard to add.
But I think the App icon would be more of an mx2cc feature than ted2go IMO.Awesome thanks!
Not sure why you’re creating a canvas and then copying the viewport pixmap of it.
You can just reference the tile in the sprite sheet. Copying a pixmap in a loop is a bit taxing.
Idk. xDI know how the themes work, except for how to make my own skins. xD
Editing the button skin hasn’t been so straight forward. Aha.I agree with the banana. +1
So skins are chopped into 9-tiles?
Oi, bugs everywhere. o.O
I’m not build for this. Lol!
Not luck yet. Consider me out.Monkey123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172Namespace stdFunction MD5:String(sMessage:String)'Pads the String as per the MD5 standardLocal sMessageLen:Int = sMessage.LengthLocal nblk:Int = ((sMessageLen + 8) Shr 6) + 1 'number of 16-word blocksLocal MD5_x:Int[] = New Int[](nblk * 16)MD5_x.Resize(nblk * 16)'Zero pad the StringLocal i:Int , k:IntFor i = 0 To (nblk * 16) - 1MD5_x[i] = 0Next'Convert To array of "words"For i = 0 To sMessageLen - 1MD5_x[(i Shr 2)] = MD5_x[(i Shr 2)] | ( sMessage[i] Shl ((i Mod 4) * 8))NextMD5_x[(i Shr 2)] = MD5_x[(i Shr 2)] | (128 Shl (((i) Mod 4) * 8))MD5_x[nblk * 16 - 2] = sMessageLen * 8'Set initial valuesLocal MD5_a:Int = 1732584193 '&H67452301Local MD5_b:Int = -271733879 '&HEFCDAB89Local MD5_c:Int = -1732584194 '&H98BADCFELocal MD5_d:Int = 271733878 '&H10325476'Loop through the wordsFor k = 0 To (nblk * 16 - 1) Step 16Local MD5_AA:Int = MD5_aLocal MD5_BB:Int = MD5_bLocal MD5_CC:Int = MD5_cLocal MD5_DD:Int = MD5_d'Round 1MD5_a = MD5_FF(MD5_a, MD5_b, MD5_c, MD5_d, MD5_x[k + 0], 7, -680876936) '&HD76AA478MD5_d = MD5_FF(MD5_d, MD5_a, MD5_b, MD5_c, MD5_x[k + 1], 12, -389564586) '&HE8C7B756MD5_c = MD5_FF(MD5_c, MD5_d, MD5_a, MD5_b, MD5_x[k + 2], 17, 606105819 )'&H242070DBMD5_b = MD5_FF(MD5_b, MD5_c, MD5_d, MD5_a, MD5_x[k + 3], 22, -1044525330) '&HC1BDCEEEMD5_a = MD5_FF(MD5_a, MD5_b, MD5_c, MD5_d, MD5_x[k + 4], 7, -176418897) '&HF57C0FAFMD5_d = MD5_FF(MD5_d, MD5_a, MD5_b, MD5_c, MD5_x[k + 5], 12, 1200080426 )'&H4787C62AMD5_c = MD5_FF(MD5_c, MD5_d, MD5_a, MD5_b, MD5_x[k + 6], 17, -1473231341) '&HA8304613MD5_b = MD5_FF(MD5_b, MD5_c, MD5_d, MD5_a, MD5_x[k + 7], 22, -45705983) '&HFD469501MD5_a = MD5_FF(MD5_a, MD5_b, MD5_c, MD5_d, MD5_x[k + 8], 7, 1770035416) '&H698098D8MD5_d = MD5_FF(MD5_d, MD5_a, MD5_b, MD5_c, MD5_x[k + 9], 12, -1958414417 )'&H8B44F7AFMD5_c = MD5_FF(MD5_c, MD5_d, MD5_a, MD5_b, MD5_x[k + 10], 17, -42063 )'&HFFFF5BB1MD5_b = MD5_FF(MD5_b, MD5_c, MD5_d, MD5_a, MD5_x[k + 11], 22, -1990404162) '&H895CD7BEMD5_a = MD5_FF(MD5_a, MD5_b, MD5_c, MD5_d, MD5_x[k + 12], 7, 1804603682) '&H6B901122MD5_d = MD5_FF(MD5_d, MD5_a, MD5_b, MD5_c, MD5_x[k + 13], 12, -40341101) '&HFD987193MD5_c = MD5_FF(MD5_c, MD5_d, MD5_a, MD5_b, MD5_x[k + 14], 17, -1502002290) '&HA679438EMD5_b = MD5_FF(MD5_b, MD5_c, MD5_d, MD5_a, MD5_x[k + 15], 22, 1236535329) '&H49B40821'Round 2MD5_a = MD5_GG(MD5_a, MD5_b, MD5_c, MD5_d, MD5_x[k + 1], 5, -165796510) '&HF61E2562MD5_d = MD5_GG(MD5_d, MD5_a, MD5_b, MD5_c, MD5_x[k + 6], 9, -1069501632) '&HC040B340MD5_c = MD5_GG(MD5_c, MD5_d, MD5_a, MD5_b, MD5_x[k + 11], 14, 643717713) '&H265E5A51MD5_b = MD5_GG(MD5_b, MD5_c, MD5_d, MD5_a, MD5_x[k + 0], 20, -373897302) '&HE9B6C7AAMD5_a = MD5_GG(MD5_a, MD5_b, MD5_c, MD5_d, MD5_x[k + 5], 5, -701558691) '&HD62F105DMD5_d = MD5_GG(MD5_d, MD5_a, MD5_b, MD5_c, MD5_x[k + 10], 9, 38016083) '&H2441453MD5_c = MD5_GG(MD5_c, MD5_d, MD5_a, MD5_b, MD5_x[k + 15], 14, -660478335) '&HD8A1E681MD5_b = MD5_GG(MD5_b, MD5_c, MD5_d, MD5_a, MD5_x[k + 4], 20, -405537848) '&HE7D3FBC8MD5_a = MD5_GG(MD5_a, MD5_b, MD5_c, MD5_d, MD5_x[k + 9], 5, 568446438) '&H21E1CDE6MD5_d = MD5_GG(MD5_d, MD5_a, MD5_b, MD5_c, MD5_x[k + 14], 9, -1019803690) '&HC33707D6MD5_c = MD5_GG(MD5_c, MD5_d, MD5_a, MD5_b, MD5_x[k + 3], 14, -187363961) '&HF4D50D87MD5_b = MD5_GG(MD5_b, MD5_c, MD5_d, MD5_a, MD5_x[k + 8], 20, 1163531501) '&H455A14EDMD5_a = MD5_GG(MD5_a, MD5_b, MD5_c, MD5_d, MD5_x[k + 13], 5, -1444681467) '&HA9E3E905MD5_d = MD5_GG(MD5_d, MD5_a, MD5_b, MD5_c, MD5_x[k + 2], 9, -51403784) '&HFCEFA3F8MD5_c = MD5_GG(MD5_c, MD5_d, MD5_a, MD5_b, MD5_x[k + 7], 14, 1735328473) '&H676F02D9MD5_b = MD5_GG(MD5_b, MD5_c, MD5_d, MD5_a, MD5_x[k + 12], 20, -1926607734) '&H8D2A4C8A'Round 3MD5_a = MD5_HH(MD5_a, MD5_b, MD5_c, MD5_d, MD5_x[k + 5], 4, -378558) '&HFFFA3942MD5_d = MD5_HH(MD5_d, MD5_a, MD5_b, MD5_c, MD5_x[k + 8], 11, -2022574463) '&H8771F681MD5_c = MD5_HH(MD5_c, MD5_d, MD5_a, MD5_b, MD5_x[k + 11], 16, 1839030562) '&H6D9D6122MD5_b = MD5_HH(MD5_b, MD5_c, MD5_d, MD5_a, MD5_x[k + 14], 23, -35309556) '&HFDE5380CMD5_a = MD5_HH(MD5_a, MD5_b, MD5_c, MD5_d, MD5_x[k + 1], 4, -1530992060) '&HA4BEEA44MD5_d = MD5_HH(MD5_d, MD5_a, MD5_b, MD5_c, MD5_x[k + 4], 11, 1272893353) '&H4BDECFA9MD5_c = MD5_HH(MD5_c, MD5_d, MD5_a, MD5_b, MD5_x[k + 7], 16, -155497632) '&HF6BB4B60MD5_b = MD5_HH(MD5_b, MD5_c, MD5_d, MD5_a, MD5_x[k + 10], 23, -1094730640) '&HBEBFBC70MD5_a = MD5_HH(MD5_a, MD5_b, MD5_c, MD5_d, MD5_x[k + 13], 4, 681279174) '&H289B7EC6MD5_d = MD5_HH(MD5_d, MD5_a, MD5_b, MD5_c, MD5_x[k + 0], 11, -358537222) '&HEAA127FAMD5_c = MD5_HH(MD5_c, MD5_d, MD5_a, MD5_b, MD5_x[k + 3], 16, -722521979) '&HD4EF3085MD5_b = MD5_HH(MD5_b, MD5_c, MD5_d, MD5_a, MD5_x[k + 6], 23, 76029189) '&H4881D05MD5_a = MD5_HH(MD5_a, MD5_b, MD5_c, MD5_d, MD5_x[k + 9], 4, -640364487) '&HD9D4D039MD5_d = MD5_HH(MD5_d, MD5_a, MD5_b, MD5_c, MD5_x[k + 12], 11, -421815835) '&HE6DB99E5MD5_c = MD5_HH(MD5_c, MD5_d, MD5_a, MD5_b, MD5_x[k + 15], 16, 530742520) '&H1FA27CF8MD5_b = MD5_HH(MD5_b, MD5_c, MD5_d, MD5_a, MD5_x[k + 2], 23, -995338651) '&HC4AC5665'Round 4MD5_a = MD5_II(MD5_a, MD5_b, MD5_c, MD5_d, MD5_x[k + 0], 6, -198630844) '&HF4292244MD5_d = MD5_II(MD5_d, MD5_a, MD5_b, MD5_c, MD5_x[k + 7], 10, 1126891415) '&H432AFF97MD5_c = MD5_II(MD5_c, MD5_d, MD5_a, MD5_b, MD5_x[k + 14], 15, -1416354905) '&HAB9423A7MD5_b = MD5_II(MD5_b, MD5_c, MD5_d, MD5_a, MD5_x[k + 5], 21, -57434055) '&HFC93A039MD5_a = MD5_II(MD5_a, MD5_b, MD5_c, MD5_d, MD5_x[k + 12], 6, 1700485571) '&H655B59C3MD5_d = MD5_II(MD5_d, MD5_a, MD5_b, MD5_c, MD5_x[k + 3], 10, -1894986606) '&H8F0CCC92MD5_c = MD5_II(MD5_c, MD5_d, MD5_a, MD5_b, MD5_x[k + 10], 15, -1051523) '&HFFEFF47DMD5_b = MD5_II(MD5_b, MD5_c, MD5_d, MD5_a, MD5_x[k + 1], 21, -2054922799) '&H85845DD1MD5_a = MD5_II(MD5_a, MD5_b, MD5_c, MD5_d, MD5_x[k + 8], 6, 1873313359) '&H6FA87E4FMD5_d = MD5_II(MD5_d, MD5_a, MD5_b, MD5_c, MD5_x[k + 15], 10, -30611744) '&HFE2CE6E0MD5_c = MD5_II(MD5_c, MD5_d, MD5_a, MD5_b, MD5_x[k + 6], 15, -1560198380 )'&HA3014314MD5_b = MD5_II(MD5_b, MD5_c, MD5_d, MD5_a, MD5_x[k + 13], 21, 1309151649) '&H4E0811A1MD5_a = MD5_II(MD5_a, MD5_b, MD5_c, MD5_d, MD5_x[k + 4], 6, -145523070) '&HF7537E82MD5_d = MD5_II(MD5_d, MD5_a, MD5_b, MD5_c, MD5_x[k + 11], 10, -1120210379) '&HBD3AF235MD5_c = MD5_II(MD5_c, MD5_d, MD5_a, MD5_b, MD5_x[k + 2], 15, 718787259) '&H2AD7D2BBMD5_b = MD5_II(MD5_b, MD5_c, MD5_d, MD5_a, MD5_x[k + 9], 21, -343485551) '&HEB86D391MD5_a = MD5_a + MD5_AAMD5_b = MD5_b + MD5_BBMD5_c = MD5_c + MD5_CCMD5_d = MD5_d + MD5_DDNextReturn WordToHex(MD5_a) + WordToHex(MD5_b) + WordToHex(MD5_c) + WordToHex(MD5_d)End FunctionFunction MD5_F:Int(x:Int, y:Int, z:Int)Return ((x & y) | (~(x) & z))End FunctionFunction MD5_G:Int(x:Int, y:Int, z:Int)Return ((x & z) | (y & (~(z))))End FunctionFunction MD5_H:Int(x:Int, y:Int, z:Int)Return (x ~ y ~ z)End FunctionFunction MD5_I:Int(x:Int, y:Int, z:Int)Return (y ~ (x | (~z)))End FunctionFunction MD5_FF:Int(a:Int, b:Int, c:Int, d:Int, x:Int, s:Int, ac:Int)a = (a + ((MD5_F(b, c, d)+ x)+ ac))a = RotateLeft(a, s)Return a + bEnd FunctionFunction MD5_GG:Int(a:Int, b:Int, c:Int, d:Int, x:Int, s:Int, ac:Int)a = (a + ((MD5_G(b, c, d) + x) + ac))a = RotateLeft(a, s)Return a + bEnd FunctionFunction MD5_HH:Int(a:Int, b:Int, c:Int, d:Int, x:Int, s:Int, ac:Int)a = (a + ((MD5_H(b, c, d) + x) + ac))a = RotateLeft(a, s)Return a + bEnd FunctionFunction MD5_II:Int(a:Int, b:Int, c:Int, d:Int, x:Int, s:Int, ac:Int)a = (a + ((MD5_I(b, c, d) + x) + ac))a = RotateLeft(a, s)Return a + bEnd FunctionFunction RotateLeft:Int(lValue:Int, iShiftBits:Int)Return (lValue Shl iShiftBits) | ( lValue Shr (32 - iShiftBits) )'Return Lsl( lValue,iShiftBits) | Lsr( lValue, (32 - iShiftBits))End FunctionFunction DecToHex:String(v:Int)Const hex:String = "0123456789abcdef"Local n:StringFor Local i:Int = 0 Until 8n += String.FromChar(hex[(v Shr (28-(i*4))) & $F])NextReturn nEnd FunctionFunction WordToHex:String(lValue:Int)Local returnString:StringreturnString = DecToHex( lValue )Return returnString.Slice(6, 8) + returnString.Slice(4, 6) + returnString.Slice(2, 4)+ returnString.Slice(0, 2)'Return returnString[6..8] + returnString[4..6] + returnString[2..4] + returnString[0..2]End FunctionRotateLeft() uses Lsl() and Lsr()
Is this just Bit shifting? Not found in Monkey2Think this is the last thing that needs translating.
If anyone translates it please post.
Would help a great deal.Not sure what this means. :+
h0 :+ a ; h1 :+ b
h2 :+ c ; h3 :+ d
Been messing with it for a while and here’s my opinion if it’s of any value.
TLDR;
I like how fast it is. It’s very Game Maker-like in terms of the Events “OnXXXX()”
Personally, I’d prefer it to be more integrated with the Mojo stack but that’s just nitpicking.I honestly can’t think of anything else, it’s a very true-to-form framework that doesn’t have much of a learning curve.
Props. 5/5@nerobot
Maybe a JSON Tree View with right click menu based on the value. So color picker for color values, number requester for numbers, etc…
Then add value/remove value.I’m actually interested in parsing a more CSS like syntax and converting it to JSON or soemthing because of those pesky commas. xD
That would be cute, lovely and waay easier than accessing the raw pointer from an Array.
I picture:Monkey123456789Local GradientColors = New GradientColor(points_array, colors_array)' then on renderCanvas.DrawPolyGradient(poly_points_array, GradientColors)' orCanvas.ColorContext = GradientColorsCanvas.DrawCircle(bleh)ColorContext would be new of course. Or just use .Color and have GradientColor extend Color
Fantastic! So much better than what I was gonna do. Thanks.
-
AuthorPosts