Client-Side, Combat minimap

pull/9/head
DodoBirb 4 years ago
parent 90e16fd365
commit a4fba50cbd

@ -17,6 +17,7 @@ buffer_write(buffer, buffer_s16, posY)
buffer_write(buffer, buffer_u8, global.sax)
buffer_write(buffer, buffer_u8, global.spectator)
buffer_write(buffer, buffer_u8, playerState)
buffer_write(buffer, buffer_bool, global.showHealthIndicatorsTimer > 0)
bufferSize = buffer_tell(buffer)
buffer_seek(buffer, buffer_seek_start, 0)
buffer_write(buffer, buffer_s32, bufferSize)
@ -28,5 +29,6 @@ buffer_write(buffer, buffer_s16, posY)
buffer_write(buffer, buffer_u8, global.sax)
buffer_write(buffer, buffer_u8, global.spectator)
buffer_write(buffer, buffer_u8, playerState)
buffer_write(buffer, buffer_bool, global.showHealthIndicatorsTimer > 0)
result = network_send_packet(socket, buffer, buffer_tell(buffer))
alarm[11] = 20

@ -1,4 +1,4 @@
var type_event, _buffer, bufferSize, bufferSizePacket, clientID, findsocket, i, arrList, f, v, ban, clientX, clientY, clientSprite, clientImage, clientA1, clientA1X, clientA1Y, clientA2, clientA2X, clientA2Y, clientA2A, clientMirror, clientArmmsl, clientRoom, clientName, clientBlend, clientFXTimer, clientRoomPrev, clientState, clientSAX, clientSpeedboost, clientSJBall, clientSJDir, clientSpeedCharge, clientPlayerHealth, clientSpectator, clientInvincible, clientMosaic, clientReform, clientVisible, arr, indexValue, clientMapX, clientMapY, sax, spectator, arrPosData, find, event, playerHealth, missiles, smissiles, pbombs, playerhealth, ping, item, metdead, team, spacejump, screwattack, spiderball, speedbooster, bomb, ibeam, wbeam, pbeam, sbeam, cbeam, otherItemArr, IDCheck, tempArr, ID, checkBeam, checkMissile, checkDamage, checkFreeze, newTeam, saxmode, lobbyLocked, samCount, getGravity, receivedPasswordHash, size, type, alignment, result, _seed, monstersLeft, monstersArea, itemArr, metdeadArr, eventArr, tileCount, tileX, tileY, tileData, itemstaken, maxmissiles, maxsmissiles, maxpbombs, maxhealth, etanks, mtanks, stanks, ptanks, time, dir, sprX, sprY, charge, arrDraw, arrID, bombX, bombY, currentWeapon, missileX, missileY, velX, velY, icemissiles, pbombX, pbombY, syncDiff, str, syncELM, otherAbsorbRelativeX, otherAbsorbRelativeY, otherAbsorbSpriteHeight, mapposx, mapposy, mirror, sentRoom, playerX, playerY, resend, receivedItem, etankCount, stankCount, ptankCount, mtankCount, receivedEvent, receivedMetdead, countArea, countLeft, part, j, receiveddmap, damageMultStr, damageMult, experimental, playerState;
var type_event, _buffer, bufferSize, bufferSizePacket, clientID, findsocket, i, arrList, f, v, ban, clientX, clientY, clientSprite, clientImage, clientA1, clientA1X, clientA1Y, clientA2, clientA2X, clientA2Y, clientA2A, clientMirror, clientArmmsl, clientRoom, clientName, clientBlend, clientFXTimer, clientRoomPrev, clientState, clientSAX, clientSpeedboost, clientSJBall, clientSJDir, clientSpeedCharge, clientPlayerHealth, clientSpectator, clientInvincible, clientMosaic, clientReform, clientVisible, arr, indexValue, clientMapX, clientMapY, sax, spectator, arrPosData, find, event, playerHealth, missiles, smissiles, pbombs, playerhealth, ping, item, metdead, team, spacejump, screwattack, spiderball, speedbooster, bomb, ibeam, wbeam, pbeam, sbeam, cbeam, otherItemArr, IDCheck, tempArr, ID, checkBeam, checkMissile, checkDamage, checkFreeze, newTeam, saxmode, lobbyLocked, samCount, getGravity, receivedPasswordHash, size, type, alignment, result, _seed, monstersLeft, monstersArea, itemArr, metdeadArr, eventArr, tileCount, tileX, tileY, tileData, itemstaken, maxmissiles, maxsmissiles, maxpbombs, maxhealth, etanks, mtanks, stanks, ptanks, time, dir, sprX, sprY, charge, arrDraw, arrID, bombX, bombY, currentWeapon, missileX, missileY, velX, velY, icemissiles, pbombX, pbombY, syncDiff, str, syncELM, otherAbsorbRelativeX, otherAbsorbRelativeY, otherAbsorbSpriteHeight, mapposx, mapposy, mirror, sentRoom, playerX, playerY, resend, receivedItem, etankCount, stankCount, ptankCount, mtankCount, receivedEvent, receivedMetdead, countArea, countLeft, part, j, receiveddmap, damageMultStr, damageMult, experimental, playerState, combatState;
disconnectTimer = 900
if (!global.acceptPacket)
exit
@ -200,6 +200,7 @@ switch type_event
sax = buffer_read(_buffer, buffer_u8)
spectator = buffer_read(_buffer, buffer_u8)
playerState = buffer_read(_buffer, buffer_u8)
combatState = buffer_read(_buffer, buffer_bool)
findsocket = ds_list_find_index(roomList, clientID)
if (clientRoom == room && global.clientID != clientID)
sameRoom = 1
@ -245,6 +246,7 @@ switch type_event
arrPosData[4] = clientRoom
arrPosData[5] = spectator
arrPosData[6] = playerState
arrPosData[7] = combatState
for (v = 0; v < ds_list_size(posData); v++)
{
arr = ds_list_find_value(posData, v)
@ -265,6 +267,7 @@ switch type_event
arrPosData[4] = clientRoom
arrPosData[5] = spectator
arrPosData[6] = playerState
arrPosData[7] = combatState
ds_list_add(posData, arrPosData)
if (instance_exists(oMapCursor) && surface_exists(oSS_Control.s_map))
surface_free(oSS_Control.s_map)
@ -383,8 +386,11 @@ switch type_event
}
if checkMissile
otherOBJ = 440
if (checkMissile && (!checkFreeze) && global.playerFreeze > 0 && global.playerFreeze <= 151 && (!global.frozenNormally))
global.playerFreeze = 1
if (checkMissile && global.playerFreeze > 0 && global.playerFreeze <= 151 && (!global.frozenNormally))
{
if ((!checkFreeze) || checkDamage == 100)
global.playerFreeze = 1
}
if global.frozenNormally
show_debug_message("normal freeze")
if (checkFreeze && global.playerFreeze == 0 && (!global.frozenNormally))

@ -256,7 +256,7 @@ if file_exists("lang/fonts/Glasstown_NBP.ttf")
ini_close()
global.fontVersion = font_add_sprite_ext(sVersionFont, "V.0123456789", 1, 1)
global.am2r_version = "V1.5.2"
global.multitroid_version = "UV1.5.1"
global.multitroid_version = "UV1.5.2"
global.gamestarted = 0
global.wave_height = 1
global.sand_map = ds_map_create()

@ -1,4 +1,4 @@
var scaleMult, f, arrList, ID, _x, _y, xoffNew, lowestPosX, lowestPosY, enemyCount, i, arrData, xDiff, yDiff, sax, spectator, playerState, lowestDist, dist;
var scaleMult, f, arrList, ID, _x, _y, xoffNew, lowestPosX, lowestPosY, enemyCount, i, arrData, xDiff, yDiff, sax, spectator, playerState, lowestDist, dist, combatState;
if (global.classicmode == 0 && global.opshowhud)
{
xoff = 33
@ -548,6 +548,7 @@ if (global.classicmode == 0 && global.opshowhud)
sax = arrData[3]
spectator = arrData[5]
playerState = arrData[6]
combatState = arrData[7]
if global.spectator
{
if (!sax)
@ -568,7 +569,10 @@ if (global.classicmode == 0 && global.opshowhud)
if ((!spectator) || sax)
{
if (playerState != 1)
draw_sprite_ext(oControl.MultitroidMapIcon, (arrData[0] - 1), (((276 + widescreen_space) + 16) - (xDiff * 8)), (12 - (yDiff * 8)), 1, 1, direction, c_white, oControl.malpha)
{
if combatState
draw_sprite_ext(oControl.MultitroidMapIcon, (arrData[0] - 1), (((276 + widescreen_space) + 16) - (xDiff * 8)), (12 - (yDiff * 8)), 1, 1, direction, c_white, oControl.malpha)
}
}
}
}

Loading…
Cancel
Save