1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2 3<html> 4 5<head> 6 <meta http-equiv="X-UA-Compatible" content="IE=Edge"> 7 <title>ccgdb: card engine: yu-gi-oh!</title> 8 <link rel="stylesheet" type="text/css" href="/inc/extjs/3.0/resources/css/ext-all.css" /> 9 <link rel="stylesheet" type="text/css" href="/inc/extjs/3.0/resources/css/xtheme-gray-extend.css" /> 10 <link rel="stylesheet" type="text/css" href="/inc/extjs/ux/Multiselect/Multiselect.css" /> 11 <link rel="stylesheet" type="text/css" href="/inc/style.css" /> 12
12<script src="https://www.google-analytics.com/urchin.js" type="text/javascript"></script>
12 13
13<script type="text/javascript"> 14 _uacct = "UA-69763-1"; 15 urchinTracker(); 16 </script>
16 17
17<script type="text/javascript" src="/inc/extjs/3.0/adapter/ext/ext-base.js"></script>
17 18
18<script type="text/javascript" src="/inc/extjs/3.0/ext-all.js"></script>
18 19
19<script type="text/javascript" src="/inc/extjs/3.0/ext-overrides.js"></script>
19 20
20<script type="text/javascript" src="/inc/extjs/ux/Multiselect/DDView.js"></script>
20 21
21<script type="text/javascript" src="/inc/extjs/ux/Multiselect/Multiselect.js"></script>
21 22
22<script type="text/javascript" src="/inc/extjs/ux/TDGi.iconMgr/TDGi.iconMgr/icons.js"></script>
22 23
23<script type="text/javascript" src="/inc/extjs/ux/TDGi.iconMgr/TDGi.iconMgr/TDGi.iconMgr.js"></script>
23 24
24<script type="text/javascript" src="stores/stores.js"></script>
24 25
25<script type='text/javascript' src="https://partner.googleadservices.com/gampad/google_service.js"> 26 </script>
26 27
27<script type='text/javascript'> 28 GS_googleAddAdSenseService("ca-pub-0393995877970856"); 29 GS_googleEnableAllServices(); 30 </script>
30 31
31<script type='text/javascript'> 32 GA_googleAddSlot("ca-pub-0393995877970856", "ccgdb_site_btf_footer_728x90"); 33 </script>
33 34
34<script type='text/javascript'> 35 GA_googleFetchAds(); 36 </script>
36 37 38 39
39<script type="text/javascript"> 40 Ext.data.Connection.disableCaching = false; 41 Ext.BLANK_IMAGE_URL = "/inc/extjs/3.0/resources/images/default/s.gif"; 42 Ext.form.Field.prototype.msgTarget = "side"; 43 Ext.QuickTips.init(); 44 45 var popup; 46 47 function showCard(id) { 48 popup = new Ext.Window({ 49 id: "popup", 50 autoHeight: true, 51 autoLoad: { 52 url: "/yugioh/card.php?cardid=" + id, 53 scripts: true 54 }, 55 bodyStyle: "background: #fff", 56 width: 900, 57 plain: false, 58 closable: true, 59 constrain: false, 60 constrainHeader: false, 61 resizable: false, 62 modal: true, 63 shadow: false, 64 shim: false, 65 renderTo: "ext", 66 title: "ccgdb.com Card Viewer" 67 }); 68 urchinTracker("/yugioh/card.php"); 69 var w = (document.body.clientWidth) ? document.body.clientWidth : window.innerWidth; 70 popup.setPosition(w / 2 - 450, 45); 71 popup.show(); 72 } 73 74 var cardNav = function(incr) { 75 var l = search.getLayout(); 76 var i = l.activeItem.id.split("card-")[1]; 77 var next = parseInt(i) + incr; 78 if (incr == 1) { 79 cards.load({ 80 url: "/yugioh/store.php", 81 params: { 82 start: 0, 83 limit: 20 84 } 85 }); 86 urchinTracker("/yugioh/newsearch"); 87 } 88 l.setActiveItem(next); 89 if (incr == 1) grid.getEl().mask(); 90 }; 91 92 var layout = "Checklist"; 93 94 var frm = new Ext.form.FormPanel({ 95 autoHeight: true, 96 bodyStyle: "padding: 10px 0px 5px 5px; border-top: 0; border-left: 0", 97 border: false, 98 defaults: { 99 width: 320 100 }, 101 header: false, 102 items: [{ 103 xtype: "panel", 104 border: false, 105 layout: "column", 106 style: "padding-left: 10px", 107 width: 950, 108 items: [{ 109 columnWidth: .49, 110 border: false, 111 layout: "form", 112 defaults: { 113 width: 326 114 }, 115 items: [{ 116 xtype: "textfield", 117 name: "c_number", 118 fieldLabel: "Card Number", 119 allowBlank: true 120 }, 121 { 122 xtype: "textfield", 123 name: "c_name", 124 fieldLabel: "Card Name", 125 allowBlank: true 126 }, 127 { 128 xtype: "textfield", 129 name: "c_text", 130 fieldLabel: "Card Text", 131 allowBlank: true 132 }, 133 { 134 xtype: "multiselect", 135 name: "c_type", 136 fieldLabel: "Card Type", 137 height: 125, 138 store: c_type, 139 dataFields: ["key", "val"], 140 valueField: "val", 141 displayField: "val" 142 }, 143 { 144 xtype: "textfield", 145 name: "c_subtype", 146 fieldLabel: "Monster Type", 147 allowBlank: true 148 }, 149 { 150 xtype: "multiselect", 151 name: "c_attrib", 152 fieldLabel: "Attribute", 153 height: 105, 154 store: c_attrib, 155 dataFields: ["key", "val"], 156 valueField: "val", 157 displayField: "val" 158 } 159 ] 160 }, { 161 columnWidth: .49, 162 border: false, 163 layout: "form", 164 defaults: { 165 width: 326 166 }, 167 items: [{ 168 xtype: "panel", 169 width: 440, 170 border: false, 171 frame: false, 172 height: 81, 173 labelWidth: 90, 174 layout: "column", 175 autoLoad: "", 176 items: [{ 177 columnWidth: .32, 178 border: false, 179 layout: "form", 180 items: [{ 181 xtype: "combo", 182 fieldLabel: "Level", 183 hiddenName: "c_level_condition", 184 lazyRender: true, 185 width: 39, 186 store: c_conditions, 187 valueField: "key", 188 displayField: "val", 189 value: "=", 190 mode: "local", 191 typeAhead: false, 192 triggerAction: "all", 193 editable: false 194 }, 195 { 196 xtype: "combo", 197 fieldLabel: "Attack", 198 hiddenName: "c_power_condition", 199 lazyRender: true, 200 width: 39, 201 store: c_conditions, 202 valueField: "key", 203 displayField: "val", 204 value: "=", 205 mode: "local", 206 typeAhead: false, 207 triggerAction: "all", 208 editable: false 209 }, 210 { 211 xtype: "combo", 212 fieldLabel: "Defense", 213 hiddenName: "c_tough_condition", 214 lazyRender: true, 215 width: 39, 216 store: c_conditions, 217 valueField: "key", 218 displayField: "val", 219 value: "=", 220 mode: "local", 221 typeAhead: false, 222 triggerAction: "all", 223 editable: false 224 } 225 ] 226 }, 227 { 228 columnWidth: .66, 229 border: false, 230 layout: "form", 231 defaults: { 232 width: 281 233 }, 234 items: [{ 235 xtype: "combo", 236 id: "cost", 237 hiddenName: "c_level", 238 lazyRender: true, 239 hideLabel: true, 240 store: c_level, 241 valueField: "val", 242 displayField: "val", 243 mode: "remote", 244 typeAhead: false, 245 triggerAction: "all", 246 editable: false 247 }, 248 { 249 xtype: "combo", 250 id: "power", 251 hiddenName: "c_power", 252 lazyRender: true, 253 hideLabel: true, 254 store: c_attack, 255 valueField: "key", 256 displayField: "val", 257 mode: "remote", 258 typeAhead: false, 259 triggerAction: "all", 260 editable: false 261 }, 262 { 263 xtype: "combo", 264
264 id: "tough", 265 hiddenName: "c_tough", 266 lazyRender: true, 267 hideLabel: true, 268 store: c_defense, 269 valueField: "key", 270 displayField: "val", 271 mode: "remote", 272 typeAhead: false, 273 triggerAction: "all", 274 editable: false 275 } 276 ] 277 } 278 ] 279 }, 280 { 281 xtype: "multiselect", 282 name: "c_rarity", 283 fieldLabel: "Rarity", 284 height: 125, 285 store: c_rarity, 286 dataFields: ["key", "val"], 287 valueField: "key", 288 displayField: "val" 289 }, 290 { 291 xtype: "multiselect", 292 name: "c_release", 293 fieldLabel: "Releases", 294 height: 105, 295 store: c_release, 296 dataFields: ["key", "val"], 297 valueField: "key", 298 displayField: "val" 299 }, 300 { 301 xtype: "combo", 302 fieldLabel: "Output Order", 303 hiddenName: "order", 304 lazyRender: true, 305 value: "card_number", 306 listWidth: 321, 307 valueField: "key", 308 displayField: "val", 309 store: new Ext.data.SimpleStore({ 310 fields: ["key", "val"], 311 data: [ 312 ["card_number", "Card Number"], 313 ["name", "Card Name"] 314 ] 315 }), 316 typeAhead: false, 317 mode: "local", 318 triggerAction: "all", 319 editable: false 320 } 321 ] 322 }] 323 }], 324 labelWidth: 90, 325 region: "center", 326 tbar: [{ 327 text: "Search", 328 minWidth: 100, 329 handler: cardNav.createDelegate(this, [1]) 330 }, { 331 text: "Reset", 332 minWidth: 100, 333 handler: function() { 334 frm.getForm().reset(); 335 frm.getForm().findField("c_power").setValue(""); 336 frm.getForm().findField("c_tough").setValue(""); 337 } 338 }, '->', { 339 xtype: "tbtext", 340 text: '<a href="index-old.php" style="text-decoration: none">Prefer the old layout...</a>' 341 }] 342 }); 343 344 var cards = new Ext.data.JsonStore({ 345 autoLoad: false, 346 fields: [{ 347 name: "id", 348 type: "int" 349 }, { 350 name: "card_number", 351 type: "string" 352 }, { 353 name: "name", 354 type: "string" 355 }, { 356 name: "type", 357 type: "string" 358 }, { 359 name: "subtype", 360 type: "string" 361 }, { 362 name: "rulestext", 363 type: "string" 364 }, { 365 name: "rarity", 366 type: "string" 367 }, { 368 name: "releaseid", 369 type: "string" 370 }, { 371 name: "img", 372 type: "string" 373 }], 374 root: "rows", 375 totalProperty: "results", 376 url: "/yugioh/store.php" 377 }); 378 379 var pager = new Ext.PagingToolbar({ 380 store: cards, 381 displayInfo: true, 382 pageSize: 20, 383 prependButtons: true, 384 items: [{ 385 text: "New Search", 386 iconCls: Ext.ux.TDGi.iconMgr.getIcon('application_side_contract'), 387 minWidth: 100, 388 handler: cardNav.createDelegate(this, [-1]) 389 }, "-", { 390 xtype: "tbtext", 391 text: "View Modes: " 392 }, { 393 iconCls: Ext.ux.TDGi.iconMgr.getIcon('application_view_list'), 394 style: "width: 15px; margin: 0", 395 tooltip: "Checklist", 396 handler: function() { 397 layout = "Checklist"; 398 grid.getColumnModel().setConfig([{ 399 name: "name", 400 header: "Card", 401 dataIndex: "name", 402 width: 930 403 }], false); 404 } 405 }, { 406 iconCls: Ext.ux.TDGi.iconMgr.getIcon('application_view_detail'), 407 style: "width: 15px; margin: 0", 408 tooltip: "Text Spoiler", 409 handler: function() { 410 layout = "Spoiler"; 411 grid.getColumnModel().setConfig([{ 412 name: "name", 413 header: "Card", 414 dataIndex: "name", 415 width: 490 416 }, { 417 name: "type", 418 header: "Card Type", 419 dataIndex: "type", 420 width: 300, 421 renderer: cardtype 422 }, { 423 name: "rarity", 424 header: "Rarity", 425 dataIndex: "rarity", 426 width: 120 427 }], false); 428 } 429 }, { 430 iconCls: Ext.ux.TDGi.iconMgr.getIcon('application_view_tile'), 431 style: "width: 15px; margin: 0 3px 0 0", 432 tooltip: "Visual Spoiler", 433 handler: function() { 434 layout = "Visual"; 435 grid.getColumnModel().setConfig([{ 436 name: "img", 437 dataIndex: "id", 438 id: "img", 439 width: 120, 440 renderer: cardimg 441 }, { 442 name: "name", 443 header: "Card", 444 dataIndex: "name", 445 width: 370 446 }, { 447 name: "type", 448 header: "Card Type", 449 dataIndex: "type", 450 width: 300, 451 renderer: cardtype 452 }, { 453 name: "rarity", 454 header: "Rarity", 455 dataIndex: "rarity", 456 width: 120 457 }], false); 458 for (var i = 0; i < grid.getStore().getCount(); i++) grid.getView().getCell(i, 0).rowSpan = 2; 459 } 460 }, "-"] 461 }); 462 463 var grid = new Ext.grid.GridPanel({ 464 autoExpandColumn: "name", 465 border: false, 466 bbar: pager, 467 columns: [{ 468 name: "name", 469 header: "Card", 470 dataIndex: "name", 471 width: 450, 472 menuDisabled: true 473 }], 474 height: 573, 475 store: cards,
476 stripeRows: true, 477 tbar: pager, 478 viewConfig: { 479 enableRowBody: true, 480 forceFit: true, 481 getRowClass: function(record, rowIndex, p, store) { 482 if (layout == "Checklist") { 483 p.body = ""; 484 return 'x-grid3-row-collapsed'; 485 } else { 486 p.body = '<div style="margin: 2px 5px 10px 5px">' + record.data.rulestext + '</div>'; 487 return 'x-grid3-row-expanded'; 488 } 489 }, 490 scrollOffset: 20 491 } 492 }); 493 grid.on("rowClick", function(g, i, e) { 494 showCard(g.getSelectionModel().getSelected().get('id')); 495 }); 496 cards.on("beforeload", function() { 497 cards.baseParams = frm.getForm().getValues(); 498 }); 499 cards.on("load", function(s, r, o) { 500 grid.getEl().unmask(); 501 if (s.getCount() > 0) { 502 if (layout == "Visual") 503 for (var i = 0; i < grid.getStore().getCount(); i++) grid.getView().getCell(i, 0).rowSpan = 2; 504 } else { 505 Ext.Msg.alert("No results", "Your query returned no results. Please try again."); 506 } 507 }); 508 509 function cardimg(value, p, record) { 510 return '<img style="float: left" src="http://img.ccgdb.com/yugioh/cards/' + record.data.img + '" width=100>'; 511 //return '<img style="float: left" src="http://img.ccgdb.com/yugioh/cards/' + record.data.releaseid + '/' + record.data.card_number + '.jpg" width=100>' ; 512 } 513 514 function cardtype(value, p, record) { 515 if (record.data.subtype != "") return record.data.type + " - " + record.data.subtype; 516 else return record.data.type; 517 } 518 519 var results = new Ext.Panel({ 520 border: false, 521 id: "card-1", 522 items: [ 523 grid 524 ] 525 }); 526 527 var google = new Ext.Panel({ 528 border: false, 529 contentEl: "google2", 530 id: "card-3", 531 region: "south", 532 width: 768 533 }); 534 535 var search = new Ext.Panel({ 536 activeItem: 0, 537 border: false, 538 height: 607, 539 items: [{ 540 xtype: "panel", 541 bodyStyle: "background: #fff", 542 border: false, 543 height: 607, 544 id: "card-0", 545 layout: "border", 546 width: 920, 547 items: [frm, google] 548 }, results], 549 layout: "card", 550 title: "Search: 7,541 cards", 551 width: "100%" 552 }); 553 554 var spoiler = new Ext.form.FormPanel({ 555 autoHeight: true, 556 border: false, 557 header: false, 558 id: "spoiler", 559 labelWidth: 90, 560 title: "Spoilers", 561 width: 920, 562 items: [{ 563 xtype: "fieldset", 564 autoHeight: true, 565 title: "Spoiler Generator", 566 width: "100%", 567 style: "margin: 10px", 568 items: [{ 569 xtype: "combo", 570 fieldLabel: "Release Name", 571 hiddenName: "release", 572 name: "c_release", 573 lazyRender: true, 574 listWidth: 286, 575 store: c_release, 576 typeAhead: true, 577 width: 286, 578 valueField: "key", 579 displayField: "val", 580 mode: "remote", 581 triggerAction: "all", 582 editable: false 583 }, 584 { 585 xtype: "combo", 586 fieldLabel: "Format Type", 587 hiddenName: "format", 588 name: "c_format", 589 lazyRender: true, 590 listWidth: 286, 591 store: c_format, 592 typeAhead: true, 593 width: 286, 594 valueField: "key", 595 displayField: "val", 596 mode: "local", 597 triggerAction: "all", 598 editable: false 599 } 600 ] 601 }], 602 tbar: [{ 603 text: "Generate", 604 minWidth: 100, 605 handler: function() { 606 location.href = "/yugioh/download.php?release=" + 607 spoiler.getForm().findField("release").getValue() + "&format=" + 608 spoiler.getForm().findField("format").getValue(); 609 } 610 }, 611 { 612 text: "Reset", 613 minWidth: 100, 614 handler: function() { 615 spoiler.getForm().reset(); 616 } 617 } 618 ] 619 }); 620 621 var panel = new Ext.TabPanel({ 622 activeTab: 0, 623 autoScroll: true, 624 bodyBorder: false, 625 border: true, 626 deferredRender: true, 627 enableTabScroll: true, 628 frame: true, 629 height: 600, 630 id: "tp", 631 items: [ 632 search, 633 spoiler 634 ], 635 plain: true, 636 style: "margin: 10px", 637 tabPosition: "top", 638 width: 930 639 }); 640 panel.on("tabchange", function(t, p) { 641 if (p.title == "Spoilers") { 642 spoiler.setWidth(926); 643 spoiler.doLayout(); 644 } 645 }); 646 647 Ext.onReady(function() { 648 panel.render("ext"); 649 frm.doLayout(); 650 }); 651 </script>
651 652 <style type="text/css"> 653 #main { 654 text-align: left; 655 } 656 657 .x-panel-tbar { 658 border-bottom: 1px solid #ddd; 659 } 660 661 .x-combo-list-item { 662 text-align: left; 663 height: 15px; 664 _height: 20px; 665 } 666 667 .x-fieldset { 668 margin-bottom: 0; 669 } 670 671 .x-btn { 672 margin: 0px 3px; 673 padding-left: 2px; 674 height: 27px; 675 } 676 677 .x-grid3-row td { 678 font-size: 12px; 679 } 680 681 .x-grid3-cell-inner { 682 overflow: auto !important; 683 white-space: normal !important; 684 } 685 686 .x-grid3-row-body { 687 line-height: 1.4; 688 } 689 690 .b { 691 color: #000; 692 } 693 694 .w { 695 color: #fff; 696 } 697 698 .ux-mselect { 699 padding: 0px; 700 } 701 </style> 702</head> 703 704<body> 705 <div id="top"> 706 <div id="header"> 707 <div id="menu"> 708 <a href="/mtg/">Magic: the Gathering</a> 709 <a href="/vs2pcg/">Vs. System 2PCG</a> 710 <a href="/yugioh/">Yu-Gi-Oh!</a> 711 <a href="/warcraft/">World of Warcraft</a> 712 <a href="/pokemon/">Pokémon</a> 713 <a href="/naruto/">Naruto</a> 714 <a href="/ufs/">UFS</a> 715 <a href="/spoils/">The Spoils</a> 716 <a href="/duelmasters/">Duelmasters</a> 717 <a href="/vs/">Vs. System</a> 718 </div> 719 <a href="/"><img alt="ccgdb" src="/images/logo.jpg" style="margin-top: 2px" border=0></a> 720 </div> 721</div> 722 <div id="main"> 723 <div id="ext"></div> 724 <div style="display: none"> 725 <div id="google2" style="padding: 0 0 10px 108px"> 726 </div> 727 </div> 728 <div style="text-align:center"> 729 <!-- ca-pub-0393995877970856/ccgdb_site_btf_footer_728x90 --> 730
730<script type='text/javascript'> 731 GA_googleFillSlot("ccgdb_site_btf_footer_728x90"); 732 </script>
732 733 <div id="footer"> 734 <a href="/index.php">Home</a>| 735 <a href="/mtg/">Magic: the Gathering</a>| 736 <a href="/yugioh/">Yu-Gi-Oh!</a>| 737 <a href="/warcraft/">World of Warcraft</a>| 738 <a href="/vs/">Vs. System</a>| 739 <a href="/pokemon/">Pokémon</a>| 740 <a href="/naruto/">Naruto</a>| 741 <a href="/ufs/">UFS</a>| 742 <a href="/spoils/">The Spoils</a>| 743 <a href="/duelmasters/">Duelmasters</a>: 744 <a href="https://twitter.com/ccgdb/" target_blank ext:qtip="Follow us on Twitter!">Twitter</a> 745 </div> 746</div> 747<!-- Start Quantcast tag -->
748<script type="text/javascript"> 749_qoptions={ 750 qacct:"p-56IB-_3k9jA2s" 751}; 752</script>
vendor: 1 bytes, line 752
752
753<script type="text/javascript" src="http://edge.quantserve.com/quant.js"></script>
753 754<noscript> 755<img src="http://pixel.quantserve.com/pixel/p-56IB-_3k9jA2s.gif" style="display: none;" border="0" height="1" width="1" alt="Quantcast"/> 756</noscript> 757<!-- End Quantcast tag --> 758 </div>
759<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4bc70e2c01a94c73b74392e4234840661791215815920" integrity="sha512-L0ha0OXavK/8okipN9F8BtP84dg9DUhPERbBXzwI6dgTA55d2+yweo3pn5CSFYs45/r8md2+xvUPtTdvTNRfjA==" data-cf-beacon='{"version":"2024.11.0","token":"2ec8b5282a2949cba5621663c5df49ef","r":1,"spa":2}' crossorigin="anonymous"></script>
759 760</body> 761 762</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.