bmppaletteのソースコードを確認したのですが、一見原因は無い様に思いました。
変数palで指定したパレットコードのみ変色させ、それ以外の色は元に戻したい、つまり元々のパレットの内、一色だけ動的に変更したいのです。
なぜbmppaletteを使用するとgetstrでオーバーフローするのでしょうか。
bmppaletteはgetstrにどのような影響を及ぼしますか。
いつも初歩的な質問ですみませんが、ご教示くださると幸いです。
よろしくお願いいたします。
#module mes_img_ #deffunc mes_img_init scrid=ginfo_newid buffer scrid bmppalette dir_exe+"\\sample\\hgimg3\\testchr.bmp" celload dir_exe+"\\sample\\hgimg3\\testchr.bmp",scrid,1 celdiv scrid,32,32,0,0 return #deffunc mes_img str p1 tgtscr=ginfo(3) x=ginfo_cx r=ginfo_r : g=ginfo_g : b=ginfo_b if scrid=0 : mes_img_init _buffer=str(p1) getstr a,_buffer,0,, if strsize>1024 : dialog "error1024mes" gsel scrid ;bmppalette dir_exe+"\\sample\\hgimg3\\testchr.bmp" palette pal,r,g,b,1 pal++ if pal>255 : pal=0 gsel tgtscr repeat strsize getstr a,_buffer,cnt,,2 if a="あ" : celput scrid,0 : continue if a="い" : celput scrid,1 : continue if a="う" : celput scrid,2 : continue if a="え" : celput scrid,3 : continue if a="お" : celput scrid,4 : continue if a="か" : celput scrid,5 : continue if a="き" : celput scrid,6 : continue if a="く" : celput scrid,7 : continue if a="け" : celput scrid,8 : continue if a="こ" : celput scrid,9 : continue loop pos x,ginfo_cy+32 return #global #include "hsp3util.as" repeat redraw 0 color 255,255,255 : boxf color 0,0,0 : pos 0,0: mes "cnt="+cnt color 255,255,0 : pos 0,100 mes_img "あいうえおかきくけこ" mes_img "あいうえおかきくけこ" mes_img "あいうえおかきくけこ" mes_img "あいうえおかきくけこ" await 1000 redraw 1 loop