Jump to content

Βattlefield 2 unlocks


spH3RiCal
 Share

Recommended Posts

Εχω βαλει το mod project reality και στο κανονικο παιχνιδι εχουν αλλαξει τα Locked οπλα σε καθε κιτ (τα οποια θελω να δω :p ).. Το προβλημα ειναι οτι εχει αλλαξει και το αρχειο στο οποιο πηγαινα και αλλαζα τις καταχωρησεις απο 0 σε 1 και ξεκλειδωναν..

Το κειμενο τωρα ειναι:

from bf2.stats.constants import *

from bf2 import g_debug

# map gamespy item ids to kits

unlockItemMap = {

11 : 0,

22 : 1,

33 : 2,

44 : 3,

55 : 4,

66 : 5,

77 : 6,

88 : 1,

99 : 2,

111 : 3,

222 : 4,

333 : 5,

444 : 0,

555 : 6,

}

sessionPlayerUnlockMap = {}

def init():

# Events

host.registerHandler('PlayerConnect', onPlayerConnect, 1)

if bf2.serverSettings.getUseGlobalUnlocks():

host.registerHandler('PlayerUnlocksResponse', onUnlocksResponse, 0)

# Connect already connected players if reinitializing

for p in bf2.playerManager.getPlayers():

onPlayerConnect(p)

if g_debug: print "Unlock module initialized"

class UnlockSet: pass

def onPlayerConnect(player):

defaultUnlocks = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

host.pers_plrSetUnlocks(player.index, defaultUnlocks, defaultUnlocks)

if not player.isAIPlayer():

id = player.index

reconnect = id in sessionPlayerUnlockMap

# always get new unlocks on reconnect/map restart/map change etc

if reconnect:

del sessionPlayerUnlockMap[id]

newUnlockSet = UnlockSet()

newUnlockSet.unlockLevel = {}

for i in range(0, NUM_KIT_TYPES):

newUnlockSet.unlockLevel = 1

sessionPlayerUnlockMap[id] = newUnlockSet

player.unlocks = sessionPlayerUnlockMap[id]

if bf2.serverSettings.getUseGlobalUnlocks():

if player.getProfileId() > 2000:

success = host.pers_plrRequestUnlocks(player.index, 1)

if not success:

if g_debug: print "Failed requesting unlocks"

else:

if g_debug: print "Player %d had no profile id, can't request unlocks" % player.index

if g_debug: print "Added player %d to unlock checking" % (player.index)

def onUnlocksResponse(succeeded, player, unlocks):

if not succeeded:

print "Unlocks request failed for player %d %d: %s" % (player.index, player.getName(), unlocks)

return

# print "Unlocks received for player ", player.getName(), "(",player.index, ") : ", unlocks

# translate gamespy item vector into a kit-based unlock vector handled by game

kitUnlocks = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

for item in unlocks:

if item in unlockItemMap:

kitUnlocks[unlockItemMap[item]] = 1

if g_debug: print "Kit unlocks: ", kitUnlocks

#We do not yet support giving different unlocks to different teams

host.pers_plrSetUnlocks(player.index, kitUnlocks, kitUnlocks)

_______________________________________________

:confused:

Αν εχει καποιος καμια ιδεα καλοδεχουμενη.. :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.