Das mit der Map-Beschränkung kannst du folgendermaßen lösen:
Ich weiß nicht genau, was SSM unter "mapName" speichert (nur den Namen der map oder den ganzen Pfad inkl. dem Name), aber das kannst du ja mittels eines simplen Consolen Ausdrucks rausfinden oder der Log entnehmen.Code:if (XVar.currentMapInfo.mapName == "Mesa") then -- Führe Airstrike aus! ... else XSendChatToAll(nil,"Tut mir leid, aber für %q ist der Airstrike Command leider nicht verfügbar!", XVar.currentMapInfo.mapName); end
EDIT:
Für die Zeitbeschränkung, ergänze diese Zeilen (ein paar sind auch nur wegen der zusätzlichen Sicherheit dar!):
Beim zweiten SetTimer stellst du deine Zeit(in Millisekunden) ein, die es dauern soll, bis der Befehl wieder freigeschaltet wird!Code:--------------------------------------------------- -- !bigsmoke --------------------------------------------------- function AEGIS.chatCommands.bigsmoke:func(player, chatMsg) if(player:IsDead()) then return end if(player.actor:GetSpectatorMode()~=0) then return end if(BigSmokeLock) then XSendChatToTarget(nil, player, "Du musst leider noch etwas warten, bevor du !bigsmoke wieder benutzen kannst!"); return end Script.SetTimer( 01,function() BigSmokeLock = true; end); local pos = XCalcSpawnPlayerPos(player,-1); g_gameRules:CreateExplosion(player.id,weaponId,50,pos,g_Vectors.up,3,3,3,3,"explosions.Smoke_grenade.smoke",5, 3, 3, 3); XSendChatToTarget(nil, player, "bigsmoke !"); Script.SetTimer( 300000,function() BigSmokeLock = false; end); end
Mfg





Zitieren
