#! /bin/tcsh
####################################################################
#	動物の森”プレイヤーアニメーションデータ変換
#	$Id: convert.sh,v 1.4 2001-04-26 16:31:14+09 komatu Exp $
####################################################################

#####使用するファイル名
set data_file="data.c"
set enum_file="data_enum.h"
set extern_ckf_file="data_extern_ckf.h"
set extern_txa_file="data_extern_txa.h"
set array_ckf_file="data_array_ckf.c"
set extern_start_file="data_extern_start.h"
#######set extern_end_file="data_extern_end.h"
set array_start_file="data_array_start.c"
#######set array_end_file="data_array_end.c"
set decl_file="convert.decl"
set decl_file2="convert2.decl"
set list_file="file.list"


#####定義ファイルのチェック
if(!(-f $decl_file)) then
    echo "定義ファイルがオープン出来ません $decl_file"
    exit 1
endif

if(!(-f $decl_file2)) then
    echo "定義ファイルがオープン出来ません $decl_file2"
    exit 1
endif


#####リストファイルの作成
#######\rm -f $list_file
#######foreach label (`\cat $decl_file`)
#######    echo "ply_1_"$label"_anm.c" >>$list_file
#######end


#####ファイルの変換
cd ../shape
foreach label (`\cat ../conv/$decl_file2`)
    txa2c "ply_1_"$label".txa" "ply_1_"$label -son -ooff -ta
    cp "ply_1_"$label"_txa.c" "ply_1_"$label"_txa.c.temp"
    \rm "ply_1_"$label"_txa.c"
    sed 's:static unsigned char ply_1_:unsigned char ply_1_:g' "ply_1_"$label"_txa.c.temp" >"ply_1_"$label"_txa.c"
    \rm "ply_1_"$label"_txa.c.temp"
end
cd ../conv


#####データファイルの作成
echo '#include "c_keyframe_type.h"' >$data_file
echo "" >>$data_file
echo '/* 一番上はwait1で固定 */' >>$data_file

foreach label (`\cat $decl_file`)
    echo 'u64 dummy_forGetStartSegment_ply_1_'$label' = 0;' >>$data_file
    echo '#include "shape/ply_1_'$label'_anm.c"' >>$data_file
    foreach label2 (`\cat $decl_file2`)
	switch($label)
	    case $label2:
		echo '#include "shape/ply_1_'$label'_txa.c"' >>$data_file
		breaksw
	endsw
    end
#######    echo 'u64 dummy_forGetEndSegment_ply_1_'$label' = 0;' >>$data_file
    echo "" >>$data_file
end

echo 'u64 dummy_forGetEndSegment_ply_1_Animation = 0;' >>$data_file


#####enum extern array ファイルの作成
\rm -f $enum_file
\rm -f $extern_ckf_file
\rm -f $array_ckf_file
\rm -f $extern_start_file
#######\rm -f $extern_end_file
\rm -f $array_start_file
#######\rm -f $array_end_file
foreach label (`\cat $decl_file`)
    echo '	M_PLAYER_ANIMATION_DATA_INDEX_'$label',' >>$enum_file
    echo 'extern cKF_BaseAnimation_R_c cKF_ba_r_ply_1_'$label';' >>$extern_ckf_file
    echo '	&cKF_ba_r_ply_1_'$label',' >>$array_ckf_file
    echo 'extern u64 dummy_forGetStartSegment_ply_1_'$label';' >>$extern_start_file
#######    echo 'extern u64 dummy_forGetEndSegment_ply_1_'$label';' >>$extern_end_file
    echo '	&dummy_forGetStartSegment_ply_1_'$label',' >>$array_start_file
#######    echo '	&dummy_forGetEndSegment_ply_1_'$label',' >>$array_end_file
end
echo 'extern u64 dummy_forGetEndSegment_ply_1_Animation;' >>$extern_start_file
echo '	&dummy_forGetEndSegment_ply_1_Animation,' >>$array_start_file

\rm -f $extern_txa_file
foreach label2 (`\cat $decl_file2`)
    \grep -h "unsigned char ply_1_" ../shape/ply_1_"$label2"_txa.c | sed 's:unsigned:extern unsigned:g' | sed 's:={:;:g' >>$extern_txa_file
end


#####テンポラリーファイルの削除
#######\rm -f $list_file
