Say it H3X0R

Everything else that doesn't fall into one of the other PB categories.
User avatar
Fluid Byte
Addict
Addict
Posts: 2336
Joined: Fri Jul 21, 2006 4:41 am
Location: Berlin, Germany

Say it H3X0R

Post by Fluid Byte »

Code: Select all

Input$ = "PureBasic is a low cost programming language. In buying PureBasic you will ensure "
Input$ + "that development will go further and faster. For personal use (ie: not used by a commercial "
Input$ + "organization) the updates are unlimited, unlike most other software out there. This means than "
Input$ + "when you buy PureBasic you will get all future updates for free, on the web site. Better still, "
Input$ + "you get the three versions of PureBasic (Amiga, Linux and Windows) for the same price ! For "
Input$ + "ease of ordering, you can safely use our secure online method. Thanks a lot for your support !"

OpenWindow(0,0,0,420,360,"Say it H3X0R !",#WS_OVERLAPPEDWINDOW | 1)

AddKeyboardShortcut(0,#PB_Shortcut_Control | #PB_Shortcut_A,0)

CreateGadgetList(WindowID(0))

ButtonGadget(0,0,0,120,20,"CLEAR")
ButtonGadget(1,0,0,120,20,"CONVERT")

dwStyle = #WS_CHILD | #WS_VISIBLE | #ES_MULTILINE | #WS_VSCROLL

*hwndInput = CreateWindowEx_(#WS_EX_CLIENTEDGE,"EDIT",Input$,dwStyle,0,0,0,0,WindowID(0),2,0,0)
*hwndOutput = CreateWindowEx_(#WS_EX_CLIENTEDGE,"EDIT",0,dwStyle,0,0,0,0,WindowID(0),3,0,0)

LoadFont(0,"Arial",9)

SendMessage_(*hwndInput,#WM_SETFONT,FontID(0),0)
SendMessage_(*hwndOutput,#WM_SETFONT,FontID(0),0)

SetFocus_(*hwndInput)

Repeat
	EventID = WaitWindowEvent()
	
	If EventID = #PB_Event_Menu : SendMessage_(GetFocus_(),#EM_SETSEL,0,-1) : EndIf
	
	If EventID = #PB_Event_Gadget And EventGadget() = 0
		SendMessage_(*hwndInput,#WM_SETTEXT,0,0)
		SendMessage_(*hwndOutput,#WM_SETTEXT,0,0)		
	EndIf
	
	If EventID = #PB_Event_Gadget And EventGadget() = 1
		Length = SendMessage_(*hwndInput,#WM_GETTEXTLENGTH,0,0)+1
		
		lpBuffer = AllocateMemory(Length)
		
		SendMessage_(*hwndInput,#WM_GETTEXT,Length,lpBuffer)

		For i=0 To Length-2
			CharIn = PeekB(lpBuffer+i)
			
			CaseOffset = 32 * Random(1)
			
			Select CharIn				
				; Characters: Lower Case
				Case 'a' : CharOut = '4'
				Case 'b' : CharOut = 'b' - CaseOffset
				Case 'c' : CharOut = 'c' - CaseOffset
				Case 'd' : CharOut = 'd' - CaseOffset
				Case 'e' : CharOut = '3'
				Case 'f' : CharOut = 'f' - CaseOffset
				Case 'g' : CharOut = 'g' - CaseOffset
				Case 'h' : CharOut = 'h' - CaseOffset
				Case 'i' : CharOut = '!'
				Case 'j' : CharOut = 'j' - CaseOffset
				Case 'k' : CharOut = 'k' - CaseOffset
				Case 'l' : CharOut = 'l' - CaseOffset
				Case 'm' : CharOut = 'm' - CaseOffset
				Case 'n' : CharOut = 'n' - CaseOffset
				Case 'o' : CharOut = '0'
				Case 'p' : CharOut = 'p' - CaseOffset
				Case 'q' : CharOut = 'q' - CaseOffset
				Case 'r' : CharOut = 'r' - CaseOffset
				Case 's' : CharOut = '$'
				Case 't' : CharOut = 't' - CaseOffset
				Case 'u' : CharOut = 'u' - CaseOffset
				Case 'v' : CharOut = 'v' - CaseOffset
				Case 'w' : CharOut = 'w' - CaseOffset
				Case 'x' : CharOut = 'x' - CaseOffset
				Case 'y' : CharOut = 'y' - CaseOffset
				Case 'z' : CharOut = 'z' - CaseOffset
	
				; Characters: Upper Case
				Case 'A' : CharOut = '@'
				Case 'B' : CharOut = 'B' + CaseOffset
				Case 'C' : CharOut = 'C' + CaseOffset
				Case 'D' : CharOut = 'D' + CaseOffset
				Case 'E' : CharOut = 'E' + CaseOffset
				Case 'F' : CharOut = 'F' + CaseOffset
				Case 'G' : CharOut = 'G' + CaseOffset
				Case 'H' : CharOut = 'H' + CaseOffset
				Case 'I' : CharOut = 'I' + CaseOffset
				Case 'J' : CharOut = 'J' + CaseOffset
				Case 'K' : CharOut = 'K' + CaseOffset
				Case 'L' : CharOut = 'L' + CaseOffset
				Case 'M' : CharOut = 'M' + CaseOffset
				Case 'N' : CharOut = 'N' + CaseOffset
				Case 'O' : CharOut = 'O' + CaseOffset
				Case 'P' : CharOut = 'P' + CaseOffset
				Case 'Q' : CharOut = 'Q' + CaseOffset
				Case 'R' : CharOut = 'R' + CaseOffset
				Case 'S' : CharOut = 'S' + CaseOffset
				Case 'T' : CharOut = 'T' + CaseOffset
				Case 'U' : CharOut = 'U' + CaseOffset
				Case 'V' : CharOut = 'V' + CaseOffset
				Case 'W' : CharOut = 'W' + CaseOffset
				Case 'X' : CharOut = 'X' + CaseOffset
				Case 'Y' : CharOut = 'Y' + CaseOffset
				Case 'Z' : CharOut = 'Z' + CaseOffset								
				
				Default : CharOut = CharIn				
			EndSelect
			
			PokeB(lpBuffer+i,CharOut)
		Next
		
		SendMessage_(*hwndOutput,#WM_SETTEXT,0,lpBuffer)
		
		FreeMemory(lpBuffer)		
	EndIf
	
	If EventID = #PB_Event_SizeWindow
		MoveWindow_(*hwndInput,5,5,WindowWidth(0)-10,(WindowHeight(0)-45)/2,1)
		MoveWindow_(*hwndOutput,5,(WindowHeight(0)-45)/2+10,WindowWidth(0)-10,(WindowHeight(0)-45)/2,1)
		
		ResizeGadget(0,WindowWidth(0)-250,WindowHeight(0)-30,120,25)
		ResizeGadget(1,WindowWidth(0)-125,WindowHeight(0)-30,120,25)
	EndIf
Until EventID = 16
Windows 10 Pro, 64-Bit / Whose Hoff is it anyway?
User avatar
djes
Addict
Addict
Posts: 1806
Joined: Sat Feb 19, 2005 2:46 pm
Location: Pas-de-Calais, France

Post by djes »

:lol:
..::Origin::..
Enthusiast
Enthusiast
Posts: 125
Joined: Sat Jun 17, 2006 3:15 pm

Post by ..::Origin::.. »

One abbreviation: LOL.

Should add word changing too, for example : You = j00
Post Reply