public static Bitmap Draw(uint id) { uint extends_pointer = U.NOT_FOUND; if (PatchUtil.SearchGenericEnemyPortraitExtendsPatch(out extends_pointer)) { uint offset = Program.ROM.p32(extends_pointer) + id * 8; if (!U.isSafetyOffset(offset + 4 + 3)) { return(ImageUtil.BlankDummy()); } uint img = Program.ROM.u32(offset); uint pal = Program.ROM.u32(offset + 4); return(Draw(img, pal)); } else { InputFormRef ifr = Init(null); uint addr = ifr.IDToAddr(id); if (addr == U.NOT_FOUND) { return(ImageUtil.BlankDummy()); } uint img = Program.ROM.u32(addr); uint pal = Program.ROM.u32(addr + (8 * 4)); return(Draw(img, pal)); } }
private void ImageGenericEnemyPortraitForm_Load(object sender, EventArgs e) { uint extends_pointer = U.NOT_FOUND; if (PatchUtil.SearchGenericEnemyPortraitExtendsPatch(out extends_pointer)) { this.ExtendsBanner.Text = R._("拡張パッチがインストールされているため、この設定は利用できません。パッチの方から修正してください。"); } else { this.ExtendsBanner.Text = R._("もっとたくさん一般兵の顔画像を利用したい場合は、パッチを利用してください。"); } }