Dreii
define{name=Dreii age=17}
offline
Опыт:
5,246
Активность:
|
Проблема с мультибордом в конце игры
Вот код,очень грозодкий.
Проблема в том что когда я проверяю 1 то все нормально но когда играют двое то этот мультиборд ломается и чер знает что творится в нем.
» Внимание! Очень большой код.
Код:
local integer i=0
local integer x=0
local multiboarditem mbitem
loop
exitwhen i>11
if GetPlayerSlotState(Player(i))== PLAYER_SLOT_STATE_PLAYING then
set x=x+1
set cols[x]=x
set gold=GetPlayerState(Player(i),PLAYER_STATE_RESOURCE_GOLD)
endif
set i=i+1
endloop
set mbe = CreateMultiboard()
call MultiboardSetRowCount(mbe,14)
call MultiboardSetColumnCount(mbe,1+cols[x])
call MultiboardSetTitleText(mbe,wins)
call MultiboardDisplay(mbe, true)
set mbitem = MultiboardGetItem(mbe,0,0)
call MultiboardSetItemValue(mbitem,"|cFF37FB04Игроки:")
call MultiboardSetItemIcon(mbitem, "ReplaceableTextures\\WorldEditUI\\Editor-MultipleUnits.blp" )
call MultiboardSetItemStyle(mbitem, true, true )
call MultiboardSetItemWidth(mbitem,.07 )
call MultiboardReleaseItem(mbitem)
set mbitem = MultiboardGetItem(mbe,2,0)
call MultiboardSetItemValue(mbitem,"|cFF37FB04Уровень:")
call MultiboardSetItemIcon(mbitem, "ReplaceableTextures\\CommandButtons\\BTNStatUp.blp" )
call MultiboardSetItemStyle(mbitem, true, true )
call MultiboardSetItemWidth(mbitem, .07 )
call MultiboardReleaseItem(mbitem)
set mbitem = MultiboardGetItem(mbe,4,0)
call MultiboardSetItemValue(mbitem,"|cFF37FB04Убийства:")
call MultiboardSetItemIcon(mbitem, "ReplaceableTextures\\CommandButtons\\BTNCriticalStrikeDAB.blp" )
call MultiboardSetItemStyle(mbitem, true, true )
call MultiboardSetItemWidth(mbitem, .07 )
call MultiboardReleaseItem(mbitem)
set mbitem = MultiboardGetItem(mbe,6,0)
call MultiboardSetItemValue(mbitem,"|cFF37FB04Смерти:")
call MultiboardSetItemIcon(mbitem, "ReplaceableTextures\\CommandButtons\\BTN_ANA_HolyCross.BLP" )
call MultiboardSetItemStyle(mbitem, true, true )
call MultiboardSetItemWidth(mbitem, .07)
call MultiboardReleaseItem(mbitem)
set mbitem = MultiboardGetItem(mbe,8,0)
call MultiboardSetItemValue(mbitem,"|cFF37FB04Попадания:")
call MultiboardSetItemIcon(mbitem, "ReplaceableTextures\\CommandButtons\\BTNMarksmanship.blp" )
call MultiboardSetItemStyle(mbitem, true, true )
call MultiboardSetItemWidth(mbitem, .07 )
call MultiboardReleaseItem(mbitem)
set mbitem = MultiboardGetItem(mbe,10,0)
call MultiboardSetItemValue(mbitem,"|cFF37FB04Промахи:")
call MultiboardSetItemIcon(mbitem, "ReplaceableTextures\\CommandButtons\\BTNEvasion.blp" )
call MultiboardSetItemStyle(mbitem, true, true )
call MultiboardSetItemWidth(mbitem, .07 )
call MultiboardReleaseItem(mbitem)
set mbitem = MultiboardGetItem(mbe,12,0)
call MultiboardSetItemValue(mbitem,"|cFF37FB04Золото:")
call MultiboardSetItemIcon(mbitem, "UI\\Widgets\\Console\\Human\\infocard-gold.blp" )
call MultiboardSetItemStyle(mbitem, true, true )
call MultiboardSetItemWidth(mbitem, .07 )
call MultiboardReleaseItem(mbitem)
x=0
i=1
loop
exitwhen x>11 and i>11
//имена
if GetPlayerSlotState(Player(x))== PLAYER_SLOT_STATE_PLAYING then
set mbitem = MultiboardGetItem(mbe,0,cols[i])
call MultiboardSetItemIcon(mbitem, icons[x] )
call MultiboardSetItemStyle(mbitem, true, true )
call MultiboardSetItemWidth(mbitem, .05 )
call MultiboardReleaseItem(mbitem)
set mbitem = MultiboardGetItem(mbe,1,cols[i])
call MultiboardSetItemValue(mbitem," "+pc[x]+GetPlayerName(Player(x)))
call MultiboardSetItemStyle(mbitem, true, false )
call MultiboardSetItemWidth(mbitem, .06 )
call MultiboardReleaseItem(mbitem)
//лвл
set mbitem = MultiboardGetItem(mbe,2,cols[i])
call MultiboardSetItemValue(mbitem,pc[x]+I2S(lvl[x]))
call MultiboardSetItemStyle(mbitem, true,false )
call MultiboardSetItemWidth(mbitem, .05 )
call MultiboardReleaseItem(mbitem)
//убийства
set mbitem = MultiboardGetItem(mbe,4,cols[i])
call MultiboardSetItemValue(mbitem,pc[x]+I2S(killmb[x]))
call MultiboardSetItemStyle(mbitem, true,false )
call MultiboardSetItemWidth(mbitem, .05 )
call MultiboardReleaseItem(mbitem)
//смерти
set mbitem = MultiboardGetItem(mbe,6,cols[i])
call MultiboardSetItemValue(mbitem,pc[x]+I2S(deathmb[x]))
call MultiboardSetItemStyle(mbitem, true,false )
call MultiboardSetItemWidth(mbitem, .05 )
call MultiboardReleaseItem(mbitem)
//попадания
set mbitem = MultiboardGetItem(mbe,8,cols[i])
call MultiboardSetItemValue(mbitem,pc[x]+I2S(kick[x]))
call MultiboardSetItemStyle(mbitem, true,false )
call MultiboardSetItemWidth(mbitem, .05 )
call MultiboardReleaseItem(mbitem)
//промахи
set mbitem = MultiboardGetItem(mbe,10,cols[i])
call MultiboardSetItemValue(mbitem,pc[x]+I2S(miss[x]))
call MultiboardSetItemStyle(mbitem, true,false )
call MultiboardSetItemWidth(mbitem, .05 )
call MultiboardReleaseItem(mbitem)
//Золото
set mbitem = MultiboardGetItem(mbe,12,cols[i])
call MultiboardSetItemValue(mbitem,pc[4]+I2S(gold[x]))
call MultiboardSetItemStyle(mbitem, true,false )
call MultiboardSetItemWidth(mbitem, .05 )
call MultiboardReleaseItem(mbitem)
endif
x=x+1
i=i+1
endloop
x=0
loop
exitwhen x>12
//Стиль
set mbitem = MultiboardGetItem(mbe,1,cols[x])
call MultiboardSetItemStyle(mbitem,true,false)
call MultiboardSetItemWidth(mbitem, .05 )
call MultiboardReleaseItem(mbitem)
set mbitem = MultiboardGetItem(mbe,3,cols[x])
call MultiboardSetItemStyle(mbitem,true,false)
call MultiboardSetItemWidth(mbitem, .05 )
call MultiboardReleaseItem(mbitem) set mbitem = MultiboardGetItem(mbe,5,cols[x])
call MultiboardSetItemStyle(mbitem,true,false)
call MultiboardSetItemWidth(mbitem, .05 )
call MultiboardReleaseItem(mbitem) set mbitem = MultiboardGetItem(mbe,7,cols[x])
call MultiboardSetItemStyle(mbitem,true,false)
call MultiboardSetItemWidth(mbitem, .05 )
call MultiboardReleaseItem(mbitem)
set mbitem = MultiboardGetItem(mbe,9,cols[x])
call MultiboardSetItemStyle(mbitem,true,false)
call MultiboardSetItemWidth(mbitem, .05 )
call MultiboardReleaseItem(mbitem)
set mbitem = MultiboardGetItem(mbe,11,cols[x])
call MultiboardSetItemStyle(mbitem,true,false)
call MultiboardSetItemWidth(mbitem, .05 )
call MultiboardReleaseItem(mbitem)
set mbitem = MultiboardGetItem(mbe,13,cols[x])
call MultiboardSetItemStyle(mbitem,true,false)
call MultiboardSetItemWidth(mbitem, .05 )
call MultiboardReleaseItem(mbitem)
x=x+1
endloop
call MultiboardMinimize(mbe,true)
call MultiboardMinimize(mbe,false)
set mbitem=null
p.s когда играет 12 человек мб тоже работает нормально
[i]Dreii добавил:
Проблема решена
|