![]() Lo_header = NEW cl_salv_form_layout_grid( ). Lo_h_label = lo_header->create_label( row = 1 column = 1 ). Gr_columns->set_cell_type_column( 'CTYP' ).ĭATA(gr_column) = gr_columns->get_column( CONV lvc_fname( |C| ) ).ĭATA(lo_header) = NEW cl_salv_form_layout_grid( ). SET HANDLER me->set_gobang FOR mo_qp->get_event( ).ĭATA(gr_columns) = mo_qp->get_columns( ). Lo_h_flow TYPE REF TO cl_salv_form_layout_flow.Ĭl_salv_table=>factory( IMPORTING r_salv_table = mo_qp CHANGING t_table = it_qp ). Value = if_salv_c_cell_type=>hotspot ) ) ) ).ĪSSIGN COMPONENT sy-index OF STRUCTURE wa_qp TO FIELD-SYMBOL().ĭATA: lo_h_label TYPE REF TO cl_salv_form_label, It_qp = VALUE #( FOR j = 1 UNTIL j > 15 ( Value = COND #( WHEN IS ASSIGNED THEN ELSE border_ins ). " 6 1 5ĪSSIGN COMPONENT col_now OF STRUCTURE it_qp TO FIELD-SYMBOL(). WHEN 8.row_now = row_now - set.col_now = col_now + set. WHEN 7.row_now = row_now - set.col_now = col_now - set. WHEN 6.row_now = row_now + set.col_now = col_now - set. WHEN 5.row_now = row_now + set.col_now = col_now + set. IF NE get_gobang( row = row col = col_cur off = off set = - sy-index ).EXIT.ENDIF. IF NE get_gobang( row = row col = col_cur off = off set = sy-index ).EXIT.ENDIF. CLASS cl_gobang IMPLEMENTATION.ĭATA(col_cur) = CONV i( column+1(3) - 99 ).ĪSSIGN COMPONENT column OF STRUCTURE it_qp TO FIELD-SYMBOL(). The AI use Valuation Algorithm to do estimation, not very smart, but easy to write. ![]() NEW cl_gobang( )->dis_gobang( ).Īt last, the main logic: the class implementation: Then we can just call method to display the board and click a cell to start the game. METHODS: mes_gobang IMPORTING mes TYPE string. METHODS: win_gobang IMPORTING row TYPE i off TYPE i column TYPE c4 RETURNING VALUE(score) TYPE i. METHODS: env_gobang IMPORTING row TYPE i col TYPE i player TYPE c4 RETURNING VALUE(value) TYPE i. METHODS: get_gobang IMPORTING row TYPE i col TYPE i off TYPE i OPTIONAL set TYPE i OPTIONAL ![]() METHODS: set_gobang FOR EVENT link_click OF cl_salv_events_table IMPORTING row column. ĬONSTANTS:border_ins TYPE c4 VALUE icon_border_inside."borderĬONSTANTS:player_wht TYPE c4 VALUE icon_incomplete.ĬONSTANTS:player_bak TYPE c4 VALUE icon_dummy.Ĭ101 TYPE c4,c102 TYPE c4,c103 TYPE c4,c104 TYPE c4,c105 TYPE c4,Ĭ106 TYPE c4,c107 TYPE c4,c108 TYPE c4,c109 TYPE c4,c110 TYPE c4,Ĭ111 TYPE c4,c112 TYPE c4,c113 TYPE c4,c114 TYPE c4,c115 TYPE c4, TYPES c4(4) TYPE c.Īnd then we define a game class: an ALV as a chessboard, 2 players( you and AI ), a table for game. Looks like a ALV? haa, yes, this is a ALV.įirst we define a type for char4. Just write it for learning abap oo and new Syntax. This is a small game, Gobang, you can play with an AI(not very smart). ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |