はじめましてチットさん。
まず最初にお伝えしておきますが、
解らないのでしたら、色違いごとに
画像を作った方が色々な意味で楽です。
昔のPCなんかでしたら、容量の関係で
画像の数をできるだけ節約しなくてはいけなかったけれども、
今のPCでしたら、少々大きめのデータなんて
まったく問題なく扱えますから。
わざわざパレットデータの作成なんていう
手間の掛かることをしなくてもいいでしょう。
これだけでは質問の答えになってませんので
一応簡単な解説をしておきます。
画像はBMPである事を前提に話を進めます。
まず、BMPファイルの構造を理解する必要があります。
探せば色々情報サイトは見つかりますが、私は次のサイトで勉強しました。
ttp://page.freett.com/honmyou/bmp_structure.htm
概要だけ説明しますと、
BMPファイルは先頭部分にヘッダ部という部分があって、
その中にカラー情報(パレットデータ)があります。
そのカラー情報を変える事で、全体の色を変える事ができるわけです。
私は、次の手順でこの作業を行っています。
1)まず1P画像を作ります。
2)プログラムで、1P画像をバイナリデータとして読み込み、
パレット部分を抜き出し、別ファイルとしてセーブします。(1Pカラーファイル)
3)1P画像の、パレットデータを変更して、2P画像を作る。
※色を塗り替えたりしてはいけない。パレットの並びが変わってしまうから。
4)2のプログラムを使って、パレットデータを抜き出す。(2Pカラーファイル)
5)ゲームプログラム内で、画像を使用する時、
画像ファイルをバイナリデータとして読み込み、
同時に、1Pカラーファイル、または2Pカラーファイルを読み込み、
画像ファイルのパレット部分に上書きする。
6)5で読み込んだバイナリデータから、グラフィックハンドルを作成する。