本文整理汇总了C++中Town::update_camp_link方法的典型用法代码示例。如果您正苦于以下问题:C++ Town::update_camp_link方法的具体用法?C++ Town::update_camp_link怎么用?C++ Town::update_camp_link使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Town
的用法示例。
在下文中一共展示了Town::update_camp_link方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: draw_detect_link_line
//.........这里部分代码省略.........
if( nation_recno == nation_array.player_recno )
world.zoom_matrix->put_bitmap_clip( firmX-11, firmY-11, bitmapPtr );
}
}
//------ draw lines to linked towns ---------//
for( i=0 ; i<linked_town_count ; i++ )
{
townPtr = town_array[linked_town_array[i]];
townX = ( ZOOM_X1 + (townPtr->loc_x1-world.zoom_matrix->top_x_loc) * ZOOM_LOC_WIDTH
+ ZOOM_X1 + (townPtr->loc_x2-world.zoom_matrix->top_x_loc+1) * ZOOM_LOC_WIDTH ) / 2;
townY = ( ZOOM_Y1 + (townPtr->loc_y1-world.zoom_matrix->top_y_loc) * ZOOM_LOC_HEIGHT
+ ZOOM_Y1 + (townPtr->loc_y2-world.zoom_matrix->top_y_loc+1) * ZOOM_LOC_HEIGHT ) / 2;
if( worker_array && selected_worker_id &&
worker_array[selected_worker_id-1].town_recno == townPtr->town_recno )
{
lineType = -1;
anim_line.thick_line(&vga_back, srcX, srcY, townX, townY, linked_town_enable_array[i]==LINK_EE, lineType );
}
else
{
lineType = 0;
anim_line.draw_line(&vga_back, srcX, srcY, townX, townY, linked_town_enable_array[i]==LINK_EE, lineType );
}
//----- check if this firm can toggle link or not -----//
if( !can_toggle_town_link() )
continue;
//--------- draw link symbol -----------//
bitmapPtr = power.get_link_icon( linked_town_enable_array[i], nation_recno==townPtr->nation_recno );
if( actionDetect )
{
int rc = world.zoom_matrix->detect_bitmap_clip( townX-11, townY-11, bitmapPtr );
//------ left clicking to toggle link -------//
if( rc==1 && own_firm() )
{
if( linked_town_enable_array[i] & LINK_ED )
{
toggle_town_link( i+1, 0, COMMAND_PLAYER );
se_ctrl.immediate_sound("TURN_OFF");
}
else
{
toggle_town_link( i+1, 1, COMMAND_PLAYER );
se_ctrl.immediate_sound("TURN_ON");
}
//
// update RemoteMsg::firm_toggle_link_town()
//
if( firm_id == FIRM_CAMP && !remote.is_enable())
{
if( townPtr->nation_recno )
townPtr->update_target_loyalty();
else
townPtr->update_target_resistance();
townPtr->update_camp_link();
}
return 1;
}
//------ right clicking to move workers ------//
else if( rc==2 && selected_worker_id > 0 )
{
//--- only when this worker is ours ----//
if( firm_res[firm_id]->live_in_town &&
worker_array[selected_worker_id-1].is_nation(firm_recno, nation_array.player_recno) )
{
if(townPtr->population>=MAX_TOWN_POPULATION)
return 0;
set_worker_home_town(townPtr->town_recno, COMMAND_PLAYER);
se_ctrl.immediate_sound("PULL_MAN");
return 1;
}
}
}
else
{
if( nation_recno == nation_array.player_recno )
world.zoom_matrix->put_bitmap_clip( townX-11, townY-11, bitmapPtr );
}
}
return 0;
}