;;mhrustyimg
;Kiki
;http://kikidide.yuki-mura.net/GIMP/gimp.htm
;http://kikidide.yuki-mura.net/GIMP/engimp.htm
;

(define (script-fu-mhrustyimg img drawable sprd blr bg? bg-md bg-color bggrad bgpat ft?)
  (let* (

;;幅と高さ
	 (width (car (gimp-drawable-width drawable)))
	 (height (car (gimp-drawable-height drawable)))

;;背景など
	 (wt-layer (car (gimp-layer-new img (+ width sprd) (+ height sprd) RGB-IMAGE "white" 100 LAYER-MODE-NORMAL)))
	 (pt-layer (car (gimp-layer-new img (+ width sprd) (+ height sprd) RGBA-IMAGE "plasma" 100 LAYER-MODE-NORMAL)))
	 (bg-layer (car (gimp-layer-new img (+ width sprd) (+ height sprd) RGB-IMAGE "BackGround" 100 LAYER-MODE-NORMAL)))

         (old-fg (car (gimp-palette-get-foreground)))

;;2.4追加
	 (obj1c)
	 (obj2)
)
    (gimp-image-undo-group-start img)

;;サイズ調整
    (gimp-image-resize img (+ width sprd) (+ height sprd) (/ sprd 2) (/ sprd 2))
    (gimp-layer-resize drawable (+ width sprd) (+ height sprd) (/ sprd 2) (/ sprd 2))

    (plug-in-spread 1 img drawable sprd sprd)
    (set! obj1c (car (gimp-layer-copy drawable 0)))
    (gimp-image-add-layer img obj1c 0)
    (plug-in-gauss-iir2 1 img obj1c blr blr)
    (gimp-image-add-layer img wt-layer 1)
    (gimp-palette-set-foreground '(255 255 255))
    (gimp-edit-fill wt-layer FILL-FOREGROUND)
    (set! obj2 (car (gimp-image-merge-down img obj1c 0)))
    (gimp-image-add-layer img pt-layer 0)
    (plug-in-plasma 1 img pt-layer 11094448 1)
    (gimp-desaturate pt-layer)
    (gimp-palette-set-foreground '(255 143 7))
    (gimp-edit-bucket-fill pt-layer FILL-FOREGROUND 3 80.2 191.5 0 0 0)
    (plug-in-bump-map 1 img pt-layer pt-layer 135 15 7 0 0 0 0 TRUE TRUE 2)
    (plug-in-bump-map 1 img pt-layer obj2 135 27 7 0 0 0 0 TRUE TRUE 2)

    (if (= TRUE bg?)
    (begin
    (gimp-selection-layer-alpha drawable)
    (gimp-selection-grow img 1)
    (gimp-selection-invert img)
    (gimp-selection-feather img 1)
    (gimp-edit-clear pt-layer)
    (gimp-selection-none img)

;;背景色の決定
    (gimp-image-add-layer img bg-layer 1)
    (gimp-palette-set-foreground bg-color)
    (gimp-edit-fill bg-layer FILL-FOREGROUND)
    (cond((= bg-md 1)
       (gimp-gradients-set-gradient bggrad)
       (gimp-blend bg-layer BLEND-CUSTOM LAYER-MODE-NORMAL GRADIENT-LINEAR 100 20 REPEAT-NONE
                                            FALSE 0 0 0 0 0 0 width height))
       ((= bg-md 2)
       (gimp-selection-all img)
       (gimp-patterns-set-pattern bgpat)
       (gimp-edit-bucket-fill bg-layer BUCKET-FILL-PATTERN LAYER-MODE-NORMAL 100 255 FALSE 0 0)
       (gimp-selection-none img)
       ))
    ))

    (if (= ft? TRUE)
    (gimp-image-flatten img)
    )

    (gimp-palette-set-foreground old-fg)

    (gimp-image-undo-group-end img)
    (gimp-displays-flush)
))

(script-fu-register "script-fu-mhrustyimg"
		    "<Image>/Filters/Alpha to Logo/Rusty"
		    "mhrustyimg"
		    "Kiki"
		    "Kiki"
		    "2005/2"
		    "RGBA"
		    SF-IMAGE        "Image"    0
		    SF-DRAWABLE     "Drawable" 0
		    SF-ADJUSTMENT   "spread"	'(5 1 30 1 10 0 0)
		    SF-ADJUSTMENT   "blur"	'(3 1 30 1 10 0 0)
                    SF-TOGGLE       "bg?"              TRUE
                    SF-OPTION       "bg-mode"          '(_"color" _"gradient" _"pattern")
		    SF-COLOR        "Background Color" '(238 233 200)
                    SF-GRADIENT     "Gradient"         "Land and Sea"
                    SF-PATTERN      "Pattern"          "Fibers"
                    SF-TOGGLE       "Flatten Image"     TRUE)


;;mhrusty
;Kiki
(define (script-fu-mhrusty text size font sprd blr bg? bg-md bg-color bggrad bgpat flat? ft?)
  (let* ((img (car (gimp-image-new 256 256 RGB)))
;;文字
	 (text-layer (car (gimp-text-fontname img -1 0 0 text (+ (/ size 12) 4) TRUE size PIXELS font)))

;;幅と高さ
	 (width (car (gimp-drawable-width text-layer)))
	 (height (car (gimp-drawable-height text-layer)))

         (old-fg (car (gimp-palette-get-foreground)))
)
    (gimp-image-undo-disable img)
;;サイズ調整
    (gimp-image-resize img width height 0 0)

    (gimp-palette-set-foreground '(0 0 0))
    (if (= flat? TRUE) (gimp-palette-set-foreground '(200 200 200)))
    (gimp-layer-set-preserve-trans text-layer TRUE)
    (gimp-edit-fill text-layer FILL-FOREGROUND)
    (gimp-layer-set-preserve-trans text-layer FALSE)

    (script-fu-mhrustyimg img text-layer sprd blr bg? bg-md bg-color bggrad bgpat ft?)

    (gimp-palette-set-foreground old-fg)

    (gimp-image-undo-enable img)
    (gimp-display-new img)
))

(script-fu-register "script-fu-mhrusty"
		    "<Image>/Logos/Rusty"
		    "mhrusty"
		    "Kiki"
		    "Kiki"
		    "2005/2"
		    ""
		    SF-STRING       "Text String"      "IN GIMP WE RUST"
		    SF-ADJUSTMENT   "Font Size (pixels)" '(120 2 1000 1 10 0 1)
		    SF-FONT         "Font"             "Arial Black"
		    SF-ADJUSTMENT   "spread"		'(5 1 30 1 10 0 0)
		    SF-ADJUSTMENT   "blur"		'(3 1 30 1 10 0 0)
                    SF-TOGGLE       "bg?"               TRUE
                    SF-OPTION       "bg-mode"          '(_"color" _"gradient" _"pattern")
		    SF-COLOR        "Background Color" '(80 22 35)
                    SF-GRADIENT     "Gradient"         "Metallic Something"
                    SF-PATTERN      "Pattern"          "Crack"
                    SF-TOGGLE       "Flat?"             FALSE
                    SF-TOGGLE       "Flatten Image"     TRUE)
