php俄罗斯方块代码,[原创]Matlab做的俄罗斯方块(含代码)
以下是引用swf_2008在2007-5-17 9:36:53的發(fā)言:
能不能在方塊移除的幾句程序后面加些注釋,不大看的懂啊.謝謝
for num = 1: length( LastBlockYData )
% 對最后一個下來的方塊按行搜索
[YData, Index] = find( TotalYData == LastBlockYData(num) ) ;
% 判斷是否滿12個(滿12個為整行,可以消除)
if length( YData ) == 12
% 保存下行號
CompleteLine = [CompleteLine, LastBlockYData(num)] ;
UsefulIndex = [UsefulIndex, Index] ;
end
end
% 處理需要消除的行
if ~isempty( CompleteLine )
% 在所有方塊序列中刪除這些行
TotalXData( UsefulIndex ) = [] ;
TotalYData( UsefulIndex ) = [] ;
% 得到完成行的數(shù)目,得到相應(yīng)的分數(shù)
LineNumber = length( CompleteLine ) ;
ScoreArray = [100 300 600 1000] ;
NewScore = ScoreArray(LineNumber) ;
% 更新總分
CurrentScore = getappdata( handles.RussiaBlock, 'CurrentScore' ) ;
TextString = get( handles.ScoreText, 'String' ) ;
TextString{2} = CurrentScore + NewScore ;
set( handles.ScoreText, 'String', TextString ) ;
setappdata( handles.RussiaBlock, 'CurrentScore', CurrentScore + NewScore ) ;
% 更新游戲等級(如果需要的話)
UpdateGameLevel( handles.RussiaBlock, CurrentScore + NewScore ) ;
% 處理需要下移的方塊
for num = LineNumber : -1 : 1
[YData, Index] = find( TotalYData > LastBlockYData(num) ) ;
% 從下往上,逐行下移一行(20象素)
TotalYData(Index) = TotalYData(Index) - 20 ;
end
end
% 設(shè)置新的方塊序列
set( handles.BlockHandle, 'XData', TotalXData, 'YData', TotalYData ) ;
end
總結(jié)
以上是生活随笔為你收集整理的php俄罗斯方块代码,[原创]Matlab做的俄罗斯方块(含代码)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: matlab中antoine方程应用,A
- 下一篇: dwt去噪 matlab,用matlab
