All pastes #980131 Raw Edit

Someone

public text v1 · immutable
·published 2008-04-10 20:17 UTC
rendered paste body
(setq intSystemLevelToString (lamba (percent modifier curve)
	(block (resultString itemLevel letter1 letter2 letter3 letter4 letter5 tempNumber letterIndex)

		(setq itemLevel (add (divide (multiply (sysGetLevel) percent) 100) modifier))

		(setq tempNumber (add (divide (add 1 itemLevel) 5) (subtract itemLevel 4)))

		(switch  
			(eq curve "b")
				(block Nil
					(setq letter1 "-")
					(setq letter2 "v")
					(setq letter3 "c")
					(setq letter4 "v")
					(setq letter5 "")
				)
			(eq curve "c")
				(block Nil
					(setq letter1 "v")
					(setq letter2 "u")
					(setq letter3 "c")
					(setq letter4 "u")
					(setq letter5 "v")
				)

			;default
			(block Nil
				(setq letter1 "-")
				(setq letter2 "-")
				(setq letter3 "c")
				(setq letter4 "")
				(setq letter5 "")
			)
		)

		(if (leq itemLevel 4)
			(setq itemLevel (cat itemLevel curve))
		)

		(switch
			(eq itemLevel "1a")
				(setq resultString "c")
			(eq itemLevel "1b")
				(setq resultString "cuv")
			(eq itemLevel "1c")
				(setq resultString "cu")

			(eq itemLevel "2a")
				(setq resultString "-c")
			(eq itemLevel "2b")
				(setq resultString "ucuv")
			(eq itemLevel "2c")
				(setq resultString "ucu")

			(eq itemLevel "3a")
				(setq resultString "--c")
			(eq itemLevel "3b")
				(setq resultString "vucuv")
			(eq itemLevel "3c")
				(setq resultString "-ucu")

			(eq itemLevel "4a")
				(setq resultString "---c")
			(eq itemLevel "4b")
				(setq resultString "-vucuv")
			(eq itemLevel "4c")
				(setq resultString "--ucu")

			;default and main loop

			(block Nil

				(setq resultString "")

				(for i 1 tempNumber
					(switch
						(eq 0 (modulus i 6))
								(setq resultString (cat resultString " "))								
						(setq resultString (cat resultString "-"))
					)
				)


				(setq letterIndex 1)
				;add the curve						
				(loop (leq letterIndex 5)
					(block Nil
						(setq tempNumber (add tempNumber 1))
						(if (eq 0 (modulus tempNumber 6))
							(block Nil
								(setq resultString (cat resultString " "))
							)
							(block Nil
								(setq resultString (cat resultString (eval (cat "letter" letterIndex))))
								(setq letterIndex (add letterIndex 1))
							)
						)
					)
				)


			;end of block
			)
		;end of switch
		)
		;return the result
		resultString
	;end of block
	)
))