/*以降オプション*/
//コメントを見せるか否か?
- setting->enable_user_comment = FALSE;
- setting->enable_owner_comment = FALSE;
- setting->data_user_path = NULL;
- setting->data_owner_path = NULL;
+ memset(setting->comment, 0x00, sizeof(setting->comment));
//一般的な設定
setting->font_path = NULL;
setting->font_index = 0;
setting->aspect_mode = 0;
int i;
char* arg;
- for(i=0;i<argc;i++){
- arg = argv[i];
- if(!setting->data_user_path && strncmp(FRAMEHOOK_OPT_DATA_USER,arg,FRAMEHOOK_OPT_DATA_USER_LEN) == 0){
- char* data_user = arg+FRAMEHOOK_OPT_DATA_USER_LEN;
- setting->data_user_path = data_user;
- setting->enable_user_comment = TRUE;
- fprintf(log,"[framehook/init]User Comment data path:%s\n",setting->data_user_path);
- fflush(log);
- }else if(!setting->data_owner_path && strncmp(FRAMEHOOK_OPT_DATA_OWNER,arg,FRAMEHOOK_OPT_DATA_OWNER_LEN) == 0){
- char* data_owner = arg+FRAMEHOOK_OPT_DATA_OWNER_LEN;
- setting->data_owner_path = data_owner;
- setting->enable_owner_comment = TRUE;
- fprintf(log,"[framehook/init]Owner Comment data path:%s\n",setting->data_owner_path);
- fflush(log);
+ for(i=0;i<argc;i++) {
+ arg = argv[i];
+ if (!setting->comment[0].path && strncmp(FRAMEHOOK_OPT_DATA_USER, arg, FRAMEHOOK_OPT_DATA_USER_LEN) == 0) {
+ char* data = arg + FRAMEHOOK_OPT_DATA_USER_LEN;
+ setting->comment[0].path = data;
+ setting->comment[0].enable = TRUE;
+ fprintf(log, "[framehook/init]User Comment data path:%s\n", setting->comment[0].path);
+ fflush(log);
+ } else if (!setting->comment[1].path && strncmp(FRAMEHOOK_OPT_DATA_OWNER, arg, FRAMEHOOK_OPT_DATA_OWNER_LEN) == 0) {
+ char* data = arg + FRAMEHOOK_OPT_DATA_OWNER_LEN;
+ setting->comment[1].path = data;
+ setting->comment[1].enable = TRUE;
+ fprintf(log, "[framehook/init]Owner Comment data path:%s\n", setting->comment[1].path);
+ fflush(log);
}else if(!setting->font_path && strncmp(FRAMEHOOK_OPT_FONT,arg,FRAMEHOOK_OPT_FONT_LEN) == 0){
char* font = arg+FRAMEHOOK_OPT_FONT_LEN;
setting->font_path = font;
*/
int initData(DATA* data,FILE* log,const SETTING* setting){
int i;
- data->user_comment.common = data;
- data->owner_comment.common = data;
- data->user_comment.enable = setting->enable_user_comment;
- data->owner_comment.enable = setting->enable_owner_comment;
- data->user_comment.opaque_comment = setting->opaque_comment;
- data->owner_comment.opaque_comment = 1; // オーナコメントは常に不透明
+ data->comment[0].common = data;
+ data->comment[1].common = data;
+ data->comment[0].enable = setting->comment[0].enable;
+ data->comment[1].enable = setting->comment[1].enable;
+ data->comment[0].opaque_comment = setting->opaque_comment;
+ data->comment[1].opaque_comment = 1; // オーナコメントは常に不透明
data->log = log;
data->fontsize_fix = setting->fontsize_fix;
data->show_video = setting->show_video;
/*
* ユーザコメント
*/
- if(data->user_comment.enable){
+ if(data->comment[0].enable){
fputs("[main/init]User Comment is enabled.\n",log);
//コメントデータ
- if(initChat(log,&data->user_comment.chat,setting->data_user_path,&data->user_comment.slot,data->video_length)){
+ if(initChat(log,&data->comment[0].chat,setting->comment[0].path,&data->comment[0].slot,data->video_length)){
fputs("[main/init]initialized comment.\n",log);
}else{
fputs("[main/init]failed to initialize comment.",log);
return FALSE;
}
//コメントスロット
- if(initChatSlot(log,&data->user_comment.slot,setting->user_slot_max,&data->user_comment.chat)){
+ if(initChatSlot(log,&data->comment[0].slot,setting->user_slot_max,&data->comment[0].chat)){
fputs("[main/init]initialized comment slot.\n",log);
}else{
fputs("[main/init]failed to initialize comment slot.",log);
/*
* オーナコメント
*/
- if(data->owner_comment.enable){
+ if(data->comment[1].enable){
fputs("[main/init]Owner Comment is enabled.\n",log);
//コメントデータ
- if(initChat(log,&data->owner_comment.chat,setting->data_owner_path,&data->owner_comment.slot,data->video_length)){
+ if(initChat(log,&data->comment[1].chat,setting->comment[1].path,&data->comment[1].slot,data->video_length)){
fputs("[main/init]initialized comment.\n",log);
}else{
fputs("[main/init]failed to initialize comment.",log);
}
//コメントスロット
// TODO とりあえず最大数は1024にしておくが...
- if(initChatSlot(log,&data->owner_comment.slot,1024,&data->owner_comment.chat)){
+ if(initChatSlot(log,&data->comment[1].slot,1024,&data->comment[1].chat)){
fputs("[main/init]initialized comment slot.\n",log);
}else{
fputs("[main/init]failed to initialize comment slot.",log);
int closeData(DATA* data){
int i;
//ユーザコメントが有効なら開放
- if(data->user_comment.enable){
- closeChat(&data->user_comment.chat);
- closeChatSlot(&data->user_comment.slot);
+ if(data->comment[0].enable){
+ closeChat(&data->comment[0].chat);
+ closeChatSlot(&data->comment[0].slot);
}
//オーナコメントが有効なら開放
- if(data->owner_comment.enable){
- closeChat(&data->owner_comment.chat);
- closeChatSlot(&data->owner_comment.slot);
+ if(data->comment[1].enable){
+ closeChat(&data->comment[1].chat);
+ closeChatSlot(&data->comment[1].slot);
}
//フォント開放
for(i=0;i<CMD_FONT_MAX;i++){
//プロセス
int process(DATA* data,SDL_Surface* surf,const int now_vpos){
//ユーザコメント
- if(data->user_comment.enable){
- if(!chat_process(&data->user_comment,surf,now_vpos)){
+ if(data->comment[0].enable){
+ if(!chat_process(&data->comment[0],surf,now_vpos)){
fputs("[process/process]failed to process comment.\n",data->log);
return FALSE;
}
}
//オーナコメント
- if(data->owner_comment.enable){
- if(!chat_process(&data->owner_comment,surf,now_vpos)){
+ if(data->comment[1].enable){
+ if(!chat_process(&data->comment[1],surf,now_vpos)){
fputs("[process/process]failed to process comment.\n",data->log);
return FALSE;
}